Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.13;
Скачать: CL | DM;

Вниз

Динамическая форма и параметры для неё?!   Найти похожие ветки 

 
Alexander_D6_XP   (2002-06-03 13:53) [0]

Привет, знатоки!

Делаю приложение, в котором, в зависимости от _произвольно_ выбранного
элемента listbox-a создаётся форма. Application.CreateForm(...).

вопросы:
1. как мне сделать форму подругому, чтобы она появляласб на taskbar-e,
чтобы она по alt+tab была видна, но закрывалась при закрытии главной?
2. как мне в созданную форму передать какое-нибудь значение? (ведь имя я
формы у меня динамическое и элементы listbox-а тоже?

если кто-то что-то подскажет, то с радостью скажу спасибо :)

Саша.


 
Song ©   (2002-06-03 14:15) [1]

1. Надо менять стиль - SetWindowLong()
2. Создавали например форму и едит
Form:=TForm.Create(nil)
...

Edit:=TEdit.Create(Form)
..

Чтобы потом обратиться к Edit нужно и использовать объект Edit
Edit.Text:="text";


 
Alexander_D6_XP   (2002-06-03 14:36) [2]

Так если я обратиться хочу со статической формы к динамически созданной?

Мне надо GeneratedFormName.Edit1.Text делать!


 
Song ©   (2002-06-03 14:42) [3]

и в чём проблема ? Сделайте переменную Form глобальной...
Я не понимаю Вашего затруднения.


 
Игорь Шевченко ©   (2002-06-03 14:42) [4]

Список созданных форм, очевидно, делать. Или искать по Screen.Forms


 
Song ©   (2002-06-03 14:47) [5]

***************************
implemantation
Var MyDinamicForm:TForm;
Edit:TEdit;

....

Procedure Button1Click(Sender:TObject);
Begin
MyDinamicForm:=TForm.Create(nil);
// другие свойства и события
Edit:=TEdit.Create(MyDinamicForm);
Edit.Parent:=MyDinamicForm;
End;

Procedure Button2Click(Sender:TObject);
Begin
IF Assigned(MyDinamicForm) then Edit.Text:="text";
End;
*************************

Пожалуйста обратился к элементу динамически созданной формы из статической.


 
Alexander_D6_XP   (2002-06-03 15:06) [6]

Супер! Спасибо, но осталась не решённой проблема:
- на таск баре она не появляется, т.к. приложение у нас только одно?! Как это сделать?

- (для меня не понятно) как у этой формы события описать?
// другие свойства и события
Спасибо большое


 
Song ©   (2002-06-03 15:14) [7]

>> (для меня не понятно) как у этой формы события описать?
MyDinamicForm:=TForm.Create(nil);
With MyDinamicForm Do
Begin
onClick:=
onKyDown:=
и т.д.
End;

Procedure Form1Destroy(Sender:TObject);
Begin
MyDinamicForm.Free;
End;

>>на таск баре она не появляется, т.к. приложение у нас только одно?! Как это сделать?

В onCreate формы:
SetWindowLong(MyDinamicForm.Hande,GWL_EXSTYLE,GetWindowLong(MyDinamicForm.Hande,GWL_EXSTYLE) or WS_EX_APPWINDOW);


 
Alexander_D6_XP   (2002-06-03 15:46) [8]

Спасибо :) Попробую :))



Страницы: 1 вся ветка

Текущий архив: 2002.06.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
1-40101
HitMan
2002-06-03 10:17
2002.06.13
Таблицы


3-39941
nedden
2002-05-20 14:27
2002.06.13
Автоматическое обновление в DBGRID или в DataSet ...


1-40085
Новеньки в Делфи
2002-06-03 00:15
2002.06.13
Прописаться в реестр


4-40203
lvv
2002-04-02 10:37
2002.06.13
Переключение языка из программы


1-40083
Demon Ltd
2002-06-03 00:07
2002.06.13
исключительные ситуации