Форум: "Основная";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];
ВнизХочу сделать чтотото типа панели открытых окон... Найти похожие ветки
← →
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 вся ветка
Форум: "Основная";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.038 c