Форум: "Основная";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];
Внизобработчик событий Найти похожие ветки
← →
lekseich (2002-02-22 13:11) [0]Я в DELPHI новичок. Помогите, пожалуйста , разобраться.
Требуется сделать так , чтобы двойной щелчок мышью и клавиши
ALT-X закрывли форму. Как заставить программу реагировать на эти
события .
Заранее благодарен.
← →
VictorT (2002-02-22 13:27) [1]void __fastcall TForm1::FormDblClick(TObject *Sender)
{
Close();
}
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if (нажато ALT+X)
Close()
}
P.S. Как узнать, что нажато ALT+X, пусть подскажет кто-небудь другой, а если разберёшся сам, то напиши.
← →
VictorT (2002-02-22 13:29) [2]Извиняюсь, забылся, я вообще-то на Билдере пишу, но думаю ты понял.
← →
[NIKEL] (2002-02-22 13:39) [3]>>VictorT
if ((Key == "X") && Shift.Contains(ssAlt))
...
← →
lekseich (2002-02-22 13:54) [4]Прошу прошения. Может я опять не правильно понял.
В задачке написано :"Двойной щелчок и ALT-X закрывают форму".
Эти два события следуют друг за другом. При выполнении этих действий по отдельности форма закрываться не должна.
← →
Val (2002-02-22 14:09) [5]как-то хитро придумано..
попробуйте выставлять флаг после даблклика и проверять его потом в OnKeyDown
← →
lekseich (2002-02-24 08:42) [6]спасибо за помощь.премного благодарен.
← →
ice (2002-02-25 08:20) [7]Вот на двойной клик по форме:
procedure TForm1.FormDblClick(Sender: TObject);
begin
form1.Close;
end;
А как хоткей оформлять я не помню.
← →
pasha676 (2002-02-26 11:44) [8]Вообще-то если ты посмотришь на object inspector и на его закладку events то там есть события FormDblClick (ответ ice)и
событие OnKeyDown. По нему определяешь кнопки нажатые. Логические переменные позволят запросто реализовать алгоритм "и" этих событий.
использование OnKeyDown
procedure TMainForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (ssAlt in Shift) and (Key=<тут код клавиши>) then
begin
<тут что надо>
end;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c