Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.29;
Скачать: CL | DM;

Вниз

Перехват нажатия кнопок pgup и pgdn формой, а не combobox   Найти похожие ветки 

 
mefodiy   (2006-09-16 10:54) [0]

Как перехватить нажатие кнопок pgup и pgdn формой, а не combobox?
Спасибо


 
Virgo_Style ©   (2006-09-16 11:00) [1]

KeyPreview := true; ?


 
mefodiy   (2006-09-16 11:13) [2]

Само собой. Но это не помагает.


 
Zeqfreed ©   (2006-09-16 11:20) [3]

SetWindowsHookEx


 
mefodiy   (2006-09-16 11:58) [4]

А попроще?


 
Virgo_Style ©   (2006-09-16 12:00) [5]

а поподробней?


 
TStas ©   (2006-09-16 23:36) [6]

ApplicationEvent такой есть, в его событии OnMessage написать if Msg.Handle = Нужный_Control.Handle ... then Handled := True вот и все.


 
brother ©   (2006-09-17 20:41) [7]


> TStas
не надо нам объектов :)
согласен с
> Zeqfreed ©   (16.09.06 11:20) [3]
> SetWindowsHookEx


 
Loginov Dmitry ©   (2006-09-17 22:32) [8]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TMyCombo = class(TCombobox)
 protected
   procedure KeyDown(var Key: Word; Shift: TShiftState); override;
 end;

 TCombobox = class(TMyCombo);

 TForm1 = class(TForm)
   ComboBox1: TComboBox;
   procedure FormKeyDown(Sender: TObject; var Key: Word;
     Shift: TShiftState);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

{ TMyCombo }

procedure TMyCombo.KeyDown(var Key: Word; Shift: TShiftState);
begin
 if (Key <> VK_PRIOR) and (Key <> VK_NEXT) then
   inherited
 else
   Form1.FormKeyDown(Form1, Key, Shift);
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
 Shift: TShiftState);
begin
 Beep;
end;

end.


 
Юрий Зотов ©   (2006-09-18 02:28) [9]

Зачем все это? Обычное KeyPreview - и в OnKeyDown все прекрасно перехватывается, зачем выдумывать проблемы?


 
sniknik ©   (2006-09-18 02:57) [10]

потому что

mefodiy   (16.09.06 11:13) [2]
> Само собой. Но это не помагает.

и все сразу поверили... гению программирования, пишущему настолько безупречный код, что его даже приводить не надо, сразу ясно, у него то ошибки нет... а виноват борланд. конечно, понаписал глюков назвал это VCL-ем и нам впаривает... и неважно, что у него то код как раз открыт и каждый может его проверить.

p.s. to all (старожилам в основном, однодневок то не убедиш) может всетаки дожидаться от авторов "обвинений" борланда, системы, ets. осмысленных обьяснений/подтверждений подтверждений кодом, а не просто "не работает"...???

p.p.s. просто скучно последнее время стало, ни одной нормальной/интересной проблемы, все какоето "банально-дутое" или "забесплатно-заказное".


 
Германн ©   (2006-09-18 03:12) [11]

Коль! Многие уже не раз проходили подобные состояния!
Есть "нормальные" темы в разных конференциях!
Но теперь есть проблема с их поиском!
Особливо для меня! Я то вообще прихожу после полуночи, в основном! И с кем мне дискутировать?


 
Юрий Зотов ©   (2006-09-18 09:55) [12]

> sniknik ©   (18.09.06 02:57) [10]

> может всетаки дожидаться от авторов "обвинений" борланда, системы,
> ets. осмысленных обьяснений/подтверждений подтверждений кодом, а не
> просто "не работает"...???

А тут и дожидаться нечего. Телепатор подсказывает, что автор пытался перехватить PgUp/PgDn в OnKeyPress. Что, естественно, не получится ни при каких KeyPreview.


 
sniknik ©   (2006-09-18 11:13) [13]

> А тут и дожидаться нечего. ...
я не про то, догадки можно какие угодно строить, пусть даже на 90% верные, я про стиль вопросов - кидают какую нибудь банальшину, и голословное заявление "не работает. почему?", причем с поддекстом (часто, но не тут, тут не так сильно прослеживается) на то, что виноват кто угодно но только не автор вопроса.
т.что я за то чтобы они это ДОКАЗЫВАЛИ, что проблема не в них самих, а в комто (иначе попросту некрасиво, борланд то ответить не может. а на подобных ламерских заявлениях коекто о дельфи в обшем суждения выносит...)
т.е. имхо, вопросы подобные этому, о том что чтото гдето не работает должны строится по схеме -
- делаю так ... в такой среде/компилятором ...
- ожидаю это ...
- получаю это ...
приблизительно конечно, главное чтобы все раскрывалось... а иначе даже рассматривать вопрос не стоит. еще раз имхо. т.к. все это создает общий несерьезный стиль сайта, который постепенно скатывается к стилю полного ламеризма.

з.ы. я бы вообще удалял(не переносил!) подобные вопросы из общих конференций... ну, не можеш/не хочеш(что чаще похоже) правильно и аргументировано задавать вопросы иди в начинающие(сам!), детский сад там, но и не надейся там на серьезное отношение(будут обьяснять прописные истины а не решать проблемы)... хочеш в общих, то будь добр соответствуй... (и еще раз имхо. это только мое личное мнение, в модерировании я его не применяю т.к. обшая политика сайта не такая...)



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

Текущий архив: 2006.10.29;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.035 c
15-1160328089
ArtemESC
2006-10-08 21:21
2006.10.29
ObjectPascal на 64x


8-1143394276
VasRoG
2006-03-26 21:31
2006.10.29
Большие изображения


15-1159932205
Александр Иванов
2006-10-04 07:23
2006.10.29
Смешение бизнес-логики и интерфейса в классах


2-1160806415
Андрей17
2006-10-14 10:13
2006.10.29
Компонент типа панели "Папки" Проводника Майкрософта


2-1160833820
sss1
2006-10-14 17:50
2006.10.29
запуск программы 1 раз