Текущий архив: 2003.03.20;
Скачать: CL | DM;
Вниз
Коды клавиш Найти похожие ветки
← →
zolotov (2003-03-10 23:33) [0]Ув. мастера, подскажите, пожалуйста. Как в событии OnKeyDown обнулить код клавиш. В событии OnKeyPress это делается так Key:=#0; А вот как такое можно сделать в событии OnKeyDown.
И еще один вопрос. У меня происходит какой-то глюк с кодом, к-й я прописываю в событии OnKeyPress.
if (Key=VK_RETURN) and(ComboBox1.ItemIndex<>-1) then
begin
if ComboBox1.ItemIndex=0 then
begin
Timer1.Enabled:=True;
Shape1.Visible:=True;
m:=m+1;
StatusBar1.Panels[2].Text:=IntToStr(m);
SelectNext((Sender as TWinControl),true,true);
ComboBox1.Enabled:=false;
end
else
if ComboBox1.ItemIndex<>0 then
begin
Timer1.Enabled:=True;
Shape2.Visible:=True;
u:=u+1;
StatusBar1.Panels[4].Text:=IntToStr(u);
SelectNext((Sender as TWinControl),true,true);
ComboBox1.Enabled:=false;
end;
end
else
if Ord(Key) = VK_Return then
begin
ComboBox1.DroppedDown := not ComboBox1.DroppedDown;
Key := #0;
end;
Короче, при нажатии на Enter все выполняется, но процедура прокруричается дважды. Т.е. как дошла до конца, возвращается на начало и снова выполняется.
Я прописываю аналогичный код, еще для нескольких ComboBox"ов.
В чем беда?
Заранее спасибо.
← →
Yuri-7 (2003-03-10 23:51) [1]>zolotov (10.03.03 23:33)
>Как в событии OnKeyDown обнулить код клавиш.
key:=0;
← →
zolotov (2003-03-11 00:07) [2]Спасибо. А тогда вопрос, почему не срабатывает этот код в событии
OnKeyDown.
if Ord(Key) = VK_Return then
begin
ComboBox1.DroppedDown := not ComboBox1.DroppedDown;
Key := 0;
end;
А в событии OnKeyPress работает, только, конечно, в место Key:=0; Я пишу Key:=#0; Т.е. по нажатию клавиши Enter выпадает список ComboBox.Что не так?
Какой код, кстати, можно прописать в событии OnKeyDown, чтобы по нажатию Enter выпадал список?
Страницы: 1 вся ветка
Текущий архив: 2003.03.20;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.009 c