|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.05.2008, 09:43 | #1 |
Пользователь
Регистрация: 06.05.2008
Сообщений: 14
|
Popup+dbGrid
Господа, прошу прощения за поднятие тойже темы, но у меня возник вопрос как зделать так, чтобы по нажатию клавиши "Enter" меню вылазило в выдиленой строке dbGrid-а. Как запихнуть Popup в dbGrid я догадался, но меню появляется в верхнем левом углу.
|
13.05.2008, 10:09 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А как ты меню вызываеш?
I'm learning to live...
|
13.05.2008, 12:09 | #3 |
Пользователь
Регистрация: 06.05.2008
Сообщений: 14
|
Вот таким вот макаром:
procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var x,y:integer; begin if key=13 then PopupMenu1.Popup(DBGrid1.ClientOrig in.X,DBGrid1.ClientOrigin.Y); end; |
13.05.2008, 13:24 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Попробуй так:
Код:
I'm learning to live...
|
13.05.2008, 13:52 | #5 |
Пользователь
Регистрация: 06.05.2008
Сообщений: 14
|
неа не помогло, а вернее даже не заработало
|
13.05.2008, 14:36 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Да эт я чет не оттуда...
Вот смотри: Код:
I'm learning to live...
|
13.05.2008, 16:16 | #7 |
Пользователь
Регистрация: 06.05.2008
Сообщений: 14
|
спасибо, получилось. НО если несколько раз нажать на одной и тойже записи, то менюшка кудато убегает, может с этим подскажешь как бороться.
|
13.05.2008, 16:48 | #8 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,065
|
как-то так для ячейки [2,2] можно. Правда немного через одно место
Код:
|
15.05.2008, 13:32 | #9 | |
Пользователь
Регистрация: 06.05.2008
Сообщений: 14
|
Цитата:
var t:Tpoint; ........................... procedure TForm1.DBGrid1DrawColumnCell(Sender : TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if gdselected in State then begin t:=Rect.TopLeft; t.X:=t.X+TDBGrid(Sender).Left; t.Y:=t.Y+TDBGrid(Sender).Top; t:=ClientToScreen(t); end; end; procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if key = 13 then PopupMenu1.Popup(t.X,t.Y); end; |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Popup menu в таблице Access | crazybabushka | БД в Delphi | 3 | 09.08.2008 12:09 |
Impact PopUp | axeli | Софт | 1 | 28.07.2008 12:02 |
popup в dbgrid | drakhar | БД в Delphi | 7 | 13.02.2008 08:20 |
Popup menu | Mitron | Компоненты Delphi | 1 | 02.02.2008 14:26 |