TMenuItem.OnClick - hangi butona basıldı?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
oklawa
Üye
Mesajlar: 68
Kayıt: 01 Oca 2008 02:53

TMenuItem.OnClick - hangi butona basıldı?

Mesaj gönderen oklawa »

Selamlar..

Popup menümde alt menülerde var.
Alt menüler açılırken aynı zamanda bağlı olduğu menuitem'in de onclick olayını tetikliyor.
Benim ihtiyacımsa üzerinde beklenince alt menüsü açılsın, tıklanırsa da fonksiyonu yerine getirsin.

Otomatik tıklama olayını çözemedim, farenin tuş durumunu öğrenmenin (kolay) bir yolu var mı?

Not : Konu webbrowser uygulaması. Bazı adresleri kategoriler halinde bir popup menüye, popup menüyü de toolbutton'a bağladım.
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: TMenuItem.OnClick - hangi butona basıldı?

Mesaj gönderen ikutluay »

oklawa yazdı:Selamlar..

Popup menümde alt menülerde var.
Alt menüler açılırken aynı zamanda bağlı olduğu menuitem'in de onclick olayını tetikliyor.
Benim ihtiyacımsa üzerinde beklenince alt menüsü açılsın, tıklanırsa da fonksiyonu yerine getirsin.

Otomatik tıklama olayını çözemedim, farenin tuş durumunu öğrenmenin (kolay) bir yolu var mı?

Not : Konu webbrowser uygulaması. Bazı adresleri kategoriler halinde bir popup menüye, popup menüyü de toolbutton'a bağladım.
hot trackingmi ne bir özellik vardı onu inceleyin
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
oklawa
Üye
Mesajlar: 68
Kayıt: 01 Oca 2008 02:53

Re: TMenuItem.OnClick - hangi butona basıldı?

Mesaj gönderen oklawa »

Teşekkürler ama HotTrack vb. bir seçenek yok.

Kod: Tümünü seç

Procedure TMainForm.CheckAndCreateWB(URL:String);
Begin
  //wb aktif webbrowserin atandığı global değişken.
  if (windows.GetKeyState(VK_LSHIFT)=-127) or (wb=nil) then CreateNewTab('WB');
  wb.Go(URL);
End;
İlk yazımdaki sorunu kategorisel linkleri menüden çıkararak çözdüm, pek istediğim gibi olmadı ama submenu açılırken tetikleme olayını hallettim.

Kullanıcı MenuItem'e sağ tıklarsa link yeni bir tab (sekme) de açılsın istiyorum ama farenin hangi butonuna basıldığını almanın bir yolunu bulamadım.

Yukardaki prosedürle shift tuşunu kontrol ederek sorunu çözmek istedim ama tutarlı bir sonuç alamadım.
İlk seferde yeni sekmede açıyor, ama ikinci seferde açık olan sekmedeki sayfayı değiştiriyor. Bu böyle devam ediyor, bir yeni bir eski..
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: TMenuItem.OnClick - hangi butona basıldı?

Mesaj gönderen conari »

Kod: Tümünü seç

if Button=mbMiddle or mbLeft or mbright         then....
Her eventte yakalayamaya bilirsiniz.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
oklawa
Üye
Mesajlar: 68
Kayıt: 01 Oca 2008 02:53

Re: TMenuItem.OnClick - hangi butona basıldı?

Mesaj gönderen oklawa »

MenuItem.onclick olayında Button parametresi yok..
Cevapla