Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];

Вниз

Достать подменю   Найти похожие ветки 

 
Канадин Владимир   (2002-02-28 12:09) [0]

Вопрос прост: хочу достать подменю из всплывающего меню, чтобы присобачить его к DropDown Menu на кнопке ToolBar"а. Или заставить меню считать другое Popup меню своим подменю. Кто-нибудь может подсказать способ решения этой проблемы?


 
lipskiy   (2002-02-28 21:05) [1]

Во-во, мне бы тоже хотелось услышать решение, если оно есть.
Я как-то мучился, ничего не вышло. IMHO, ни как нельзя.


 
Song   (2002-02-28 21:39) [2]

Достать по-моему не проблема, если я правильно понял вопрос:
TMenuItem(Sender).Caption


 
lipskiy   (2002-02-28 22:10) [3]

Насколько я понял, надо не название менюхи достать, а ее саму оторвать от одной менюхи и прикрутить к другой. Типа подветку из одного Popup перенести в другой Popup, или же просто отображать и там и там одно и тоже подменю.


 
[NIKEL]   (2002-03-01 05:40) [4]

(если я правильно понял вопрос)
если надо отображать и там и там одно и тоже меню, то зачем другой Popup ? достаточно обработать нажатие левой клавы мыши на любом компаненте и раскрыть там нужное попап меню :)
примерно так:

void __fastcall TMainForm::SomeButtonClick(TObject *Sender)
{
PopupMenu->Popup(Mouse->CursorPos.x,Mouse->CursorPos.y);
}

вот и всё


 
Канадин Владимир   (2002-03-01 11:35) [5]

К сожалению, вопрос был в другом. В Delphi в главном меню есть пункт File/Reopen, в котором выпадает меню-список последних проектов и файлов. Точно такое-же меню-список выпадает при нажатии на DropDown кнопку Open. Вопрос состоит в том, как реализовать самому аналогичное поведение меню.


 
DieHard   (2002-03-01 13:00) [6]

Похоже, что только созданием заново при нажатии на кнопку аналогичного меню


 
Val   (2002-03-01 13:01) [7]

например так:

var MyPopup:TPopupMenu;
NewItem: TMenuItem;
i:byte;
MySubItems: array[0..1] of TMenuItem;
begin
MyPopup:=TPopupMenu.Create(Self);
NewItem := TMenuItem.Create(Self);
NewItem.Caption := "NewItem";
MyPopup.Items.Add(NewItem);

for i:=0 to 1 do
begin
MySubItems[i] := TMenuItem.Create(Self);
MySubItems[i].Caption := PopupMenu1.Items[1].Items[i].Caption;
MySubItems[i].OnClick := PopupMenu1.Items[1].Items[i].OnClick;
MyPopup.Items[0].Add(MySubItems[i]);
//а так почему-то не добавляется :( ???
//MyPopup.Items[0].Add(PopupMenu1.Items[1].Items[i]);
end;
ToolButton1.DropDownMenu:=MyPopup;
..
end;



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

Форум: "Основная";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.005 c
1-57418
Ig
2002-03-02 11:23
2002.03.18
Как отключить заставку у платного компонента?


6-57469
Ghost.
2001-12-29 09:09
2002.03.18
Сервер SOCKS4/5


14-57491
Igor_thief
2002-01-30 16:50
2002.03.18
Компоненты


3-57335
pupkin
2002-02-19 18:02
2002.03.18
Как узнать логин текущего пользователя в SQL


1-57402
Beeper
2002-02-28 21:50
2002.03.18
Как определить в проекте, какая из форм будет активной?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский