Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Вниз

Как програмно нажать (выбрать) пункт меню из ТMainMenu ? 


maxi   (2001-11-12 16:26) [0]

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

Mymenu.items[0].Click

Однако, он не нажимается.
Что делать ?



Mbo   (2001-11-13 09:02) [1]

Пункт меню имеет имя
procedure TForm1.N21Click(Sender: TObject);
begin
label1.caption:="sdf";
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
N21Click(Sender);
end;

но лучше используй ActionList



maxi   (2001-11-13 12:00) [2]

Спасибо за ответ, но Мне то надо, что бы по нажатию на кнопку, фокус с кнопки снимался, и передавался на соответствующий пункт меню.
Как бы получше объяснить ?
Например нажмите F10 в Ворде, Екселе или ИнетЭксплорере. Выделится первый пункт меню (если таковое есть). Но как сделать так, что бы при нажатии кнопки эффект был таким же (т.к. F10 у меня занята и использовать её нельзя)?????
Заранее благодарен.



Fellomena   (2001-11-13 12:05) [3]

Используй ActionList и при нажатии делай SendMessage(), с хэндлм нужного меню и сообщением WM_SETFOCUS



maxi   (2001-11-13 12:20) [4]

Может быть так и пойдет, но хотелось бы по кнопке.
Пробовал так :

procedure TMainForm.BitBtn1Click(Sender: TObject);
begin
SendMessage(BitBtn1.Handle,WM_KILLFOCUS,0,0);
SendMessage(N1.Handle,WM_SETFOCUS,0,0);
еnd;

Это все равно не пашет... Что деать ?



Fellomena   (2001-11-15 12:30) [5]

Что есть N1 ?



nikkie   (2001-11-15 16:54) [6]

SendMessage(Handle, WM_SYSCOMMAND, SC_KEYMENU, 0);



Fellomena   (2001-11-16 16:55) [7]

Вот кстати, вспомнила старая:
WM_INITMENU; // АКТИВИЗАЦИЯ
WM_INITMENUPOPUP; // раскрытие подменю
WM_MENUSELECT; // "подсветка" команды меню
WM_CONTEXTMENU; // нажатие правой кнопки мышы для отображен. контекстного меню




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.023 c
3-52463           Wladimir              2001-12-14 07:50  2002.01.17  
Множественное удаление записей в таблице


1-52598           Ross                  2001-12-29 19:19  2002.01.17  
XP Component


3-52453           МаксБ                 2001-12-13 15:19  2002.01.17  
Проблема с датой


3-52465           aleXXoft              2001-12-13 14:32  2002.01.17  
Floating point invalid operation


14-52648          Alexandr              2001-11-16 08:32  2002.01.17  
Нехилая тут цензура