Вниз
Скачать: CL | DM;

Хочу сделать чтотото типа панели открытых окон...   Найти похожие ветки 

 
TohaNik ©   (2004-07-02 18:15) [0]

На OnShow формы создаю кнопки на ToolBar главной формы с Name по
по классу формы которая креатится ну free кнопкам на onClose.
А вот что написать в  событии для кнопок чтоб сделать активной форму которой соответствует нажимаемая кнопка.
Или это по-другому делается.


 
TUser ©   (2004-07-02 18:32) [1]

SetFocus, SetForegroundWindow


 
akvilon ©   (2004-07-02 19:10) [2]

SetWindow
SetWindowPos


 
TohaNik ©   (2004-07-02 19:24) [3]

Вот пишу на MDI форме
procedure TfmNaryads.FormShow(Sender: TObject);
begin
 MainForm.ShowFmButton(Caption,"T"+Name);
end;

procedure TfmNaryads.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 MainForm.FreeFmButton("T"+Name);
end;
В гл. форме

procedure TMainForm.ShowFmButton(fmCaption: TCaption; fmName: TComponentName);
var
 fmBtn: TSpeedButton;
begin
 fmBtn := TSpeedButton.Create(Self);
 fmBtn.Parent := ToolBar1;
 fmBtn.Name := fmName;
 fmBtn.Caption := fmCaption;
 fmBtn.Hint := fmCaption;
 fmBtn.Width := 120;
 fmBtn.OnClick := OnClickFmButton;
end;

procedure TMainForm.FreeFmButton(fmName: TComponentName);
var
 ToolControl : TComponent;
begin
 ToolControl := FindComponent(fmName);
 if ToolControl.ClassType = TSpeedButton
   then ToolControl.Free;
end;

procedure TMainForm.OnClickFmButton( Sender : TObject );
var
 FormName : String;
 fmNameL : Integer;
 ToForm : TComponent;
begin
 fmNameL := Length(TControl(Sender).Name)-1;
 FormName := Copy(TControl(Sender).Name,2,fmNameL);
 ToForm := Application.FindComponent(FormName);
 if ToForm.ClassName = TControl(Sender).Name then
   begin
     ShowMessage("FormClass= "+ToForm.ClassName);
     а здесь хочу сделать активной найденую форму
   end
end

ЗЫ: В АПИ ноль



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
4-1086247794
Romka
2004-06-03 11:29
2004.07.18
Перезагрузка Сетевой катры


14-1088325039
_student
2004-06-27 12:30
2004.07.18
Нужно при щелчке на рабочем столе вывести звезду


1-1089019622
serg128
2004-07-05 13:27
2004.07.18
Как отследить нажатие клавиши на клавиатуре?


1-1089201468
zorik
2004-07-07 15:57
2004.07.18
Как сделать TRadioButton i TCheckBox ReadOnly


3-1087447779
cardinall
2004-06-17 08:49
2004.07.18
Как объединить две ячейки в Excel программно?




   Наверх