powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Create form
12 сообщений из 12, страница 1 из 1
Create form
    #38047369
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть некий проект. В нем описан Formset. На одной из форм по нажатию кнопки требуется открыть окно и ввести параметры. Так-как эта операция нужна очень редко и мало кому хочу описать ее как:
_frm=CREATEOBJECT('Form')
_frm.name=SYS(2015)
_frm.left=10
_frm.width=350
_frm.top=10
_frm.height=150
_frm.visible=.t.
_frm.addobject('Text1','Textbox')
_frm.text1.left=10
_frm.text1.width=75
_frm.text1.top=10
_frm.text1.height=25
_frm.alwaysontop=.t.
_frm.show()

При этом форма смигивает. и все...

При попытке поставить _frm.show(1) = выдает ошибку, что не может изменить модальность в видимой форме...
...
Рейтинг: 0 / 0
Create form
    #38047394
ArgonS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
glamisЕсть некий проект. В нем описан Formset. На одной из форм по нажатию кнопки требуется открыть окно и ввести параметры. Так-как эта операция нужна очень редко и мало кому хочу описать ее как:
_frm=CREATEOBJECT('Form')
_frm.name=SYS(2015)
_frm.left=10
_frm.width=350
_frm.top=10
_frm.height=150
_frm.visible=.t.
_frm.addobject('Text1','Textbox')
_frm.text1.left=10
_frm.text1.width=75
_frm.text1.top=10
_frm.text1.height=25
_frm.alwaysontop=.t.
_frm.show()

При этом форма смигивает. и все...

При попытке поставить _frm.show(1) = выдает ошибку, что не может изменить модальность в видимой форме...

_frm = CreateObject("Form1")
_frm.Show(1)

Define class Form1 as form
AutoCenter = .t.
Name = "Form1"

add object Text1 AS textbox with ;
Alignment = 3, Height = 23, Left = 36, Margin = 2, Top = 24, Width = 100, Name = "Text1"
ENDDEFINE
_frm.name="test"
_frm.left=10
_frm.width=350
_frm.top=10
_frm.height=150
_frm.alwaysontop=.t.
...
Рейтинг: 0 / 0
Create form
    #38047452
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArgonS_frm = CreateObject("Form1")
_frm.Show(1)

Define class Form1 as form
AutoCenter = .t.
Name = "Form1"

add object Text1 AS textbox with ;
Alignment = 3, Height = 23, Left = 36, Margin = 2, Top = 24, Width = 100, Name = "Text1"
ENDDEFINE
_frm.name="test"
_frm.left=10
_frm.width=350
_frm.top=10
_frm.height=150
_frm.alwaysontop=.t.

Class difinition Form1 is not found
...
Рейтинг: 0 / 0
Create form
    #38047455
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
glamis, все у тебя правильно только ты не учитываешь область видимости переменной _frm.
поставь в конце MessageBox('') и посмотришь на свою форму :)
Форма создается и показывается, но тут твой код заканчивает работать и переменная _frm уничтожается и форма тоже.
в этом одно из основных отличий CREATEOBJECT('Form') и DO FORM ...
Если тебе надо чтобы форма продолжала существовать то сделай так чтоб переменная жила дальше. Например используй свойство другой формы или экрана. Или PUBLIC ее сделай, но это не очень хорошо.
...
Рейтинг: 0 / 0
Create form
    #38047463
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
glamisПри попытке поставить _frm.show(1) = выдает ошибку, что не может изменить модальность в видимой форме...
Код: sql
1.
2.
_frm.Visible = .F.
_frm.show(1)
...
Рейтинг: 0 / 0
Create form
    #38047498
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TglamisПри попытке поставить _frm.show(1) = выдает ошибку, что не может изменить модальность в видимой форме...
Код: sql
1.
2.
_frm.Visible = .F.
_frm.show(1)



Этот фокус не прошел
...
Рейтинг: 0 / 0
Create form
    #38047510
Penner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_frm=CREATEOBJECT('Form')
_frm.name=SYS(2015)
_frm.left=10
_frm.width=350
_frm.top=10
_frm.height=150
_frm.visible=.t.
_frm.addobject('Text1','Textbox')
_frm.text1.left=10
_frm.text1.width=75
_frm.text1.top=10
_frm.text1.height=25
_frm.alwaysontop=.t.
_frm.show( 1 )
...
Рейтинг: 0 / 0
Create form
    #38048100
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогло.
Странно, я вроде эти варианты с visible проверял.

сенк
...
Рейтинг: 0 / 0
Create form
    #38048112
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, совершенно непонятно почему не отрабатывает конструкция
createobject()
Define class...

Почему-то createobject не видит define.
...
Рейтинг: 0 / 0
Create form
    #38048122
glamis,
Я так думаю из-за того, что Define Class ... следует уже после того, как сделан CreateObject... В этот момент Фокс не знает еще, что он должен создавать - описания-то нет. Поэтому и идет ошибка..

Я, после знакомства с С/С++, стараюсь Define и Create писать либо в разных файлах (чтобы Фокс сам нашел необходимые ссылки), либо, если в одном файле, то Define... перед Create...
...
Рейтинг: 0 / 0
Create form
    #38048291
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Станислав С...кий,

если ставлю define class перед create - ругается на add object в описании класса - пишет, что данная команда может быть использована только в define class
...
Рейтинг: 0 / 0
Create form
    #38048294
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардонец,

Проект чужой, этот блок строится динамически и только что разглядел, что дергаюсь внутри другого defin class
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Create form
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]