Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.25;
Скачать: 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 вся ветка

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
14-1081006135
Soft
2004-04-03 19:28
2004.04.25
Диалог: "Я случайно отформатил не тот диск"


3-1080460711
Dimagenius
2004-03-28 11:58
2004.04.25
Как осуществить поиск в таблице базы данных?


4-1076991892
Unax
2004-02-17 07:24
2004.04.25
Запрет обработки сообщений окну


14-1080804199
Nikolay M.
2004-04-01 11:23
2004.04.25
1 апреля в СМИ


3-1080539971
Orc
2004-03-29 09:59
2004.04.25
Лист Excel