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

Вниз

Меню с кнопкой закрытия документа   Найти похожие ветки 

 
Переяслов Григорий ©   (2004-04-07 17:40) [0]

В программе реализован псевдо-многодокументный интерфейс. Есть некая сущность (аналог документа), когда она открывается, то в главное окно добавляются некоторые элементы. Всегда можно выбрать одну из сущностей и закрыть ее, используя специальную кнопку на тулбаре. Хотелось бы продублировать эту кнопку кнопкой, аналогичной кнопке закрытия документа. Эта кнопка должна быть в меню. Но в стандартное меню невозможно добавить никаких контролов. Как можно обойти эту проблему?


 
Семен Сорокин ©   (2004-04-07 18:31) [1]

Это типа меню как в Delphi IDE?
если да, то TActionManager + TActionMainMenuBar (Delphi7\Demos\ActionBands)


 
Ломброзо ©   (2004-04-07 21:55) [2]

Это типа надо просто положить на форму Rebar-CoolBar, смастерить RebarBand с фиксированной шириной, в него поместить хотя бы панель, на панели или отрисовывать системные кнопки функцией DrawFrameControl, или самому написать системные кнопки.  Я их отнаследовал от TPanel:

void __fastcall TSystemButton::Paint(void)
{
   TPanel::Paint();
   ULONG flag = 0;
   if (FPressed)
       flag = DFCS_PUSHED ;
   switch (FSystemButtonStyle)
   {
       case eMinimize:
           ::DrawFrameControl(Canvas->Handle, &Rect(0, 0, Width, Height), DFC_CAPTION, DFCS_CAPTIONMIN | flag);
           break;
       case eRestore:
           ::DrawFrameControl(Canvas->Handle, &Rect(0, 0, Width, Height), DFC_CAPTION, DFCS_CAPTIONRESTORE | flag);
           break;
       case eMaximize:
           ::DrawFrameControl(Canvas->Handle, &Rect(0, 0, Width, Height), DFC_CAPTION, DFCS_CAPTIONMAX | flag);
           break;
       case eClose:
           ::DrawFrameControl(Canvas->Handle, &Rect(0, 0, Width, Height), DFC_CAPTION, DFCS_CAPTIONCLOSE | flag);
           break;
   }
}


 
Переяслов Григорий ©   (2004-04-08 09:31) [3]

Всем спасибо



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
14-1080559223
Marser
2004-03-29 15:20
2004.04.25
Лесь Подервянский vs Шура Каретный


1-1081511875
basken
2004-04-09 15:57
2004.04.25
Столкнулся с проблемой при приминении паттерна стратегия


14-1080720767
Undert
2004-03-31 12:12
2004.04.25
Подскажиет плииззз


4-1077521025
Gas
2004-02-23 10:23
2004.04.25
Как определить, что окно что-то обрабатывает? (висят "часики")


4-1077180092
GrayFace
2004-02-19 11:41
2004.04.25
Что такое Scan code (OEM)?