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

Как в Outlook   Найти похожие ветки 

 
Iddqd   (2004-04-05 10:22) [0]

Как организовать интерфейс subj. Т.е панель меню слева и рабочая панель alClient. При выборе пункта меню меняется рабочая область.
Пока сделал просто на панелях, меняя им свойства visible и align.
Но это не очень удобно при разработке. Прочитал в советах Озерова такое решение:

Использовать отдельные формы, которые создаются и уничтожаются в зависимости от щелчка пользователя на соответствующей закладке. Вот основные шаги для достижения цели:

Во-первых, каждой дочерней форме необходимо задать ее параметры создания как показано ниже:



   ...
private
{ Private declarations }
PROCEDURE CreateParams(VAR Params: TCreateParams); override;
...
procedure TForm2.CreateParams(VAR Params: TCreateParams);
begin
Inherited CreateParams(Params);
with Params do begin
WndParent := Application.MainForm.Handle;
Style := (Style OR WS_CHILD) AND NOT (WS_POPUP);
end;
end;


Свойство дочерней формы BorderStyle должно быть установлено в bsNone. В главной форме создайте закрытое поле данных с типом TForm. Инициализируйте его при наступлении события OnActivate, НЕ OnCreate. Теперь при каждом щелчке на закладке "смены страниц" освобождаем текущую дочернюю форму и создаем новую необходимого типа. Например, при наступлении события OnActivate:


Child := TForm2.Create(Self);
with Child do begin
 Parent := Self;
 Align := alClient;
 Visible := True;
end;


Когда вы создаете дочернюю страницу при нажатиях на закладках, делайте это так, как показано выше. Естественно, вам понадобиться использовать главную форму для хранения данных о состоянии элементов управления дочернего окна, поскольку при его освобождении данные теряются.


Но у меня не получается его использовать, постоянно выдает ошибки доступа... Подскажите пожалуйста верное решение


 
TUser ©   (2004-04-05 11:19) [1]

В jedi есть 2 компонента для организации Outlook-like Panel


 
iddqd   (2004-04-05 13:51) [2]

Что это jedi?



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

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



Память: 0.45 MB
Время: 0.021 c
1-1081342555
Ozone
2004-04-07 16:55
2004.04.25
Потоки


1-1081120749
Broot
2004-04-05 03:19
2004.04.25
Генерация кривой


1-1081298822
olhovik
2004-04-07 04:47
2004.04.25
Вставка в .ехе


6-1077961868
KyRo
2004-02-28 12:51
2004.04.25
В чем ошибка при сканировании портов ClientSoket-om??


7-1077960096
DuhcmanSoft
2004-02-28 12:21
2004.04.25
StayOnTop для компонентов требуется помощь.




   Наверх