Вниз
Скачать: CL | DM;

"Вдавленая" кнопка   Найти похожие ветки 

← →
Elec3C ©   (2007-11-25 15:42) [0]

Есть код, который при нажатии на кнопку показывает popupmenu под этой под кнопкой. Как сделать, так, чтобы перед показом popupmenu, кнопка вдавливась и оставалась вдавленой до скрытия popupmenu?

Код(Возможно код нужно пихать не в OnClick):
procedure TForm1.But1Click(Sender : PObj);
begin
 // Здесь "вдавливание" кнопки
 MenuPR.Popup(Form.Left + 265, Form.Top + 310); // Мои координаты вывода popupmenu
 // Здесь "выдавливание" кнопки
end;

P.S. Возможно нужно пихать код в OnMouseDown, но при этом я не знаю, как вдавить кнопку.


← →
Vladimir Kladov ©   (2007-11-25 17:44) [1]

Я бы не заморачивался. В XP+ вдавленная кнопка скорее не вдавлена, а выделена. А тем много, и они разные. Вам же не кнопка нужна, а popup меню.


← →
Compiler ©   (2007-11-25 21:18) [2]

Если в Button1.OnClick(..) ничего нет то
procedure TForm1.KOLFormFormCreate(Sender: PObj);
begin
Button1.Style:=button1.Style or BS_AUTOCHECKBOX ;
end;

procedure TForm1.Button1MouseDown(Sender: PControl;
 var Mouse: TMouseEventData);
var
 i:integer;  p:Tpoint;
begin
if mouse.Button=mbRight then
begin
GetCursorPos(p);
SendMessage(Button1.Handle,WM_LBUTTONDOWN,0,0);
SendMessage(Button1.Handle,WM_LBUTTONUp,0,0);
popupmenu1.Popup(p.X,p.Y);
SendMessage(Button1.Handle,WM_LBUTTONDOWN,0,0);
SendMessage(Button1.Handle,WM_LBUTTONUp,0,0);
end;

end;


← →
Elec3C ©   (2007-11-26 16:37) [3]


> Compiler ©

Спасибо.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
2-1224738416
ganda
2008-10-23 09:06
2008.11.30
Создание sql запроса


2-1224769834
Piero
2008-10-23 17:50
2008.11.30
Двумерный массив в классе


3-1210762560
Ирина
2008-05-14 14:56
2008.11.30
Как редактировать запись из поля DBEdit в несколько таблиц


3-1210767266
_Guest_
2008-05-14 16:14
2008.11.30
Длинная строка в sql запросе в BDE (TQuery)


15-1222757063
Любитель музыки
2008-09-30 10:44
2008.11.30
Чтение DVD-караоке на компьютере




   Наверх