Форум: "Начинающим";
Текущий архив: 2010.09.26;
Скачать: [xml.tar.bz2];
Внизdbgrideh Найти похожие ветки
← →
rar (2010-06-28 14:56) [0]на форме расположено несколько компонентов в том числе dbgrideh
, при получении dbgrideh фокуса необходимо что бы курсор попал в строку фильтра
← →
Плохиш © (2010-06-28 15:18) [1]OnEnter
← →
rar (2010-06-28 15:30) [2]OnEnter это событие, а вопрос как установить курсор в строку фильтра
← →
Leonid Troyanovsky © (2010-06-28 15:53) [3]
> rar (28.06.10 15:30) [2]
> OnEnter это событие, а вопрос как установить курсор в строку
> фильтра
> при получении dbgrideh фокуса
OnEnter
← →
Leonid Troyanovsky © (2010-06-28 15:57) [4]
> необходимо что бы курсор попал в
Windows.SetFocus(HWnd_строка_фильтра);
--
Regards, LVT.
← →
rar (2010-06-28 16:00) [5]по этому событию грид получает фокус, а мне недо в строку фильтра попасть
← →
Плохиш © (2010-06-28 16:27) [6]Найми программиста.
← →
rar (2010-06-28 16:30) [7]строка фильтра не имеет хендл
← →
Leonid Troyanovsky © (2010-06-28 18:57) [8]
> rar (28.06.10 16:30) [7]
> строка фильтра не имеет хендл
Контролы без хендла фокус не получают.
--
Regards, LVT.
← →
И. Павел © (2010-06-28 19:16) [9]> rar
Если лучше способа не найдете, то можно попробовать послать DBGridEh сообщения для щелчка мышью в строке фильтра. Это будет не фокус, но курсор туда переместится.
← →
MsGuns © (2010-06-28 19:23) [10]Блин, ему нужна кАмпАнетна, которая при получении фокуса сразу фигачит в строку фильтра :)
← →
Leonid Troyanovsky © (2010-06-28 19:25) [11]
> И. Павел © (28.06.10 19:16) [9]
> будет не фокус, но курсор туда переместится
Не в фокусе, но с каретом.
Про "не лает, не кусает.." слыхали, а это что ж за чудо?
--
Regards, LVT.
← →
Leonid Troyanovsky © (2010-06-28 19:31) [12]
> MsGuns © (28.06.10 19:23) [10]
> сразу фигачит в строку фильтра :)
Здесь update нужен, но заказывать, IMHO, не здесь нужно,
а у Дм. Большакова, ЕМНИП.
--
Regards, LVT.
← →
И. Павел © (2010-06-28 19:48) [13]Извращение, конечно, но вроде бы работает:
var
Form1: TForm1;
InGrid: boolean;
implementation
{$R *.dfm}
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
var p: TPoint;
begin
p := self.ScreenToClient(Msg.pt);
if (Msg.message = WM_LBUTTONDOWN) or (Msg.message = WM_LBUTTONUP) then
if not InGrid then
if ((p.X >= DBGridEh1.Left) and
(p.X <= DBGridEh1.Left + DBGridEh1.Width) and
(p.Y >= DBGridEh1.Top) and
(p.Y <= DBGridEh1.Top + DBGridEh1.Height)) then
begin
DBGridEh1.SetFocus;
Msg.LParam := MakeLParam(70, 20);
InGrid := true;
end;
end;
procedure TForm1.DBGridEh1Exit(Sender: TObject);
begin
InGrid := false;
end;
← →
И. Павел © (2010-06-28 19:49) [14]> MakeLParam(70, 20);
Тут 70 и 20 лучше считать динамически.
← →
Игорь Шевченко © (2010-06-28 19:50) [15]И. Павел © (28.06.10 19:48) [13]
Людей, которые в методах пишут self. надо убивать во избежание засорения генофонда.
← →
И. Павел © (2010-06-28 20:00) [16]
> Людей, которые в методах пишут self.
Я название функции забыл, поэтому написал self и точку - чтобы выбрать из списка :)
ИМХО в этом коде self - не самое страшное :)
← →
MsGuns © (2010-06-28 21:26) [17]Смортю я на эту парнографию и тихо радуюсь, что у меня нету ух-грида :)
← →
Mike Kouzmine (2010-06-29 10:33) [18]MsGuns © (28.06.10 21:26) [17]
Толпа спецалистов меделенно, но неотвратимо перемещается в сиситему управления, а это не эх-грид
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.09.26;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.003 c