Создание VCL Forms приложений и в OnMouseDown
событий обработчика записи главной формы:Значение сдвига при нажатии только клавиши CTRL?
procedure TForm2.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Shift = [ssCtrl] then
ShowMessage('CTRL pressed');
end;
Затем запустите приложение, нажмите и удерживайте клавишу CTRL вниз, без других модифицирующих клавиш, а затем нажмите кнопку на форме. Сообщение не отображается. Почему сейчас?
Значения Shift
имеют в этом случае, когда нажата клавиша CTRL?
Почему вы не ответили на это самостоятельно, оценив «Shift» в отладчике? Он сразу сказал бы вам, что содержимое «Shift» не просто [ssCtrl], даже если нажата только одна из клавиш Ctrl. – MartynA