Текущий архив: 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.014 c