Форум: "KOL";
Текущий архив: 2014.08.24;
Скачать: [xml.tar.bz2];
ВнизСделать кучу форм Найти похожие ветки
← →
Vinum (2008-03-18 20:39) [0]Здравствуйте. На форме кнопка. Подскажите пожалуйста, как мне сделать так, чтоб по нажатию этой кнопки появлялась точно такая же форма с такой же кнопкой, чтоб при нажатии этой кнопки появилась опять еще одна такая же форма с кнопкой....и чтоб все формы были рабочие и их можно было закрыть в любой момент
← →
Compiler © (2008-03-18 22:09) [1]На вскидку
Кинуть на форму Applet и
var
CloneForm:PForm1;
begin
NewForm1(CloneForm,Applet);
CloneForm.Form.Show;
end;
Работоспособность не гарантирую, не проверял :)
← →
Vinum (2008-03-18 22:16) [2]Работает прекрасно :) только на таскбаре не показываются новые окна и если закрываешь самую первую форму, то закрываются все остальные.Это лечится? :)
← →
Compiler © (2008-03-18 22:22) [3]> только на таскбаре не показываются
Заменить Applet на nil?
> закрываешь самую первую форму, то закрываются все
Первая-главная.
> Это лечится
Наверное нет.
P.S. И вообще, правильно ли это?
← →
Vinum (2008-03-18 22:32) [4]>Заменить Applet на nil?
спасибо, заработало.
>Наверное нет.
очень жаль.
>И вообще, правильно ли это?
не понял :)
← →
Compiler © (2008-03-18 23:46) [5]> >И вообще, правильно ли это?
Формы без родителя (Aparent=nil), Free для форм не вызывается. Наверное будет утечка памяти
← →
Vinum (2008-03-20 16:00) [6]а вот такое решение правильное?
shellexecute(form.Handle,nil,"forms.exe",nil,nil,sw_normal)
← →
Compiler © (2008-03-20 22:34) [7]> Vinum (20.03.08 16:00) [6]
Это уже будет куча запущенных экземпляров приложения
← →
RusSun © (2009-09-13 13:28) [8]program Project1;
uses kol;
//{$DEFINE SMALLEST_CODE}
{$R *.res}
var
form,form2,Button1,CheckBox1:PControl;
//область для процедур
procedure clickbutton1(Sender:PControl; var mouse:TMouseEventData);
begin
if not Assigned( Form2 ) then
NewForm( Applet ,"Form2");
Form2.Show;
end;
procedure Close_form2(DummySelf,Sender: PControl; var Accept: Boolean);
begin
if CheckBox1.Checked then
begin
Accept := FALSE;
Form2.Hide;button1.Focused:=true;
end;
if Assigned( Form2 ) then begin
accept:=false;
form2.Hide;button1.Focused:=true;
end else
accept:=true;
end;
Begin
form:=NewForm(Applet,"Form1").SetPosition( 246, 107 ).SetClientSize( 205, 138 );
Button1 := NewButton( form, "Form2.Show" ).SetPosition( 32, 64 ).SetSize( 137, 0 );
Button1.OnClick:=TonEvent(MakeMethod(nil,@clickbutton1));
Form2:= NewForm( Applet,"Form2").SetPosition( 245, 272 ).SetClientSize( 206, 152 );
CheckBox1 := NewCheckBox( Form2, "Just Hide, not Close" ).SetPosition( 16, 16 ).SetSize( 177, 0 );
form2.OnClose:=TOnEventAccept(MakeMethod(nil,@Close_form2));
Run(form);
end.
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2014.08.24;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c