Yorumları: 970
Konuları: 44
Kayıt Tarihi: 24-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 2.712
Uzman
Merhabalar.
Objelerin MouseUp ve MouseDown olaylarında yer alan
Shift: TShiftState; MouseDown da sorunsuz çalışıyor. MouseUp ta ise işlev görmüyor.
Bunun nedeni nedir?
Aşağıdaki kodu MouseDown ve MouseUp olaylarında deneyebilirsiniz.
if Shift = [ssLeft] then ShowMessage('Çalıştı');
Ağlarsa kablosuz ağlar, gerisi yerel ağlar...
Yorumları: 970
Konuları: 44
Kayıt Tarihi: 24-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 2.712
Uzman
Biraz daha açayım.
MouseDown olayında ShiftState ile klavye ve Mouse olaylarını yakalarken neden MouseUp ile her ikisini yakalayamıyoruz? MouseUpta neden Mouse butonları için neden MouseButton kullanmak durumundayız?
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Single);
begin
if Button = TMouseButton.mbRight then Memo1.Lines.Add('dbR');
if Button = TMouseButton.mbLeft then Memo1.Lines.Add('dbL');
if (ssLeft in Shift) then Memo1.Lines.Add('dsL');
if (ssRight in Shift) then Memo1.Lines.Add('dsR');
end;
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Single);
begin
if Button = TMouseButton.mbRight then Memo1.Lines.Add('ubR');
if Button = TMouseButton.mbLeft then Memo1.Lines.Add('ubL');
if (ssLeft in Shift) then Memo1.Lines.Add('usL');
if (ssRight in Shift) then Memo1.Lines.Add('usR');
end;
Ağlarsa kablosuz ağlar, gerisi yerel ağlar...