Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.12;
Скачать: CL | DM;

Вниз

Непонятности с TFrame   Найти похожие ветки 

 
inquisitive ©   (2002-07-30 16:25) [0]

Столкнулся с непонятными глюками компонента TFrame. Размещаю один фрейм (Frame3) на другом (Frame1) и кладу это всё на форму. На верхнем фрейме (Frame2) я размести TActionList, определив у TAction свойство Shortcut; но Shortcut не работает. Если у Frame3 поменять значение любого свойства или добавить обработку какого-нибудь события (можно даже просто опертор ";"), то всё работает нормально. При этом в dfm-файле (формы) добавлются строки:
inherited Frame31: TFrame3
Enabled = False //Если, например, было изменено св-во Enable
OnClick = Frame21Frame31Click //Если обрабатывается событие OnClick
Ещё более непонятные вещи происходят, если цепочку вложености фреймов увеличть до 3-х, разместив на каждом TActionList и определив у TAction Shortcut.
Интересно, почему так происходит?..


 
Antonius   (2002-07-30 18:31) [1]

Боюсь ошибиться, но думаю это связано с сохранением свойств фрейма (компонента) в поток и чтение их оттуда при создании компонента. С чем-то подобным сталкивался. Если у компонента все свойства находятся в default значениях, то он сохраняется (а вроде и вовсе не сохраняется) - загружается малость по другому, что ли... Видимо, тут ошибка фрейма - при изменении свойства компонента, которым фрейм владеет, он (фрейм) об этом не догадывается и сохранить себя не пытается. А чего сохранять, если все свойства установлены в значение по умолчанию ? Думаю, надо в ран-тайм проверить, есть ли это shortcut у ActionList



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
1-35282
TAN_K
2002-07-31 15:46
2002.08.12
Помогите начинающему в Delphi


4-35509
Burmistroff
2002-06-06 21:06
2002.08.12
PWideChar -> PChar


1-35257
^SANYA
2002-07-31 11:04
2002.08.12
StringGrid or Ini?


1-35297
Ира
2002-07-29 10:36
2002.08.12
Сообщение по Outlook...


7-35483
kamikadzeKiller
2002-05-25 09:02
2002.08.12
Cервис