SORU
30 Aralık 2008, Salı


En iyi Windows Forms uygulamasında klavye kısayolları uygulamak için yolu?

Genel Windows klavye kısayolları uygulamak için daha iyi bir yol arıyorum (örneğinCtrlF,CtrlN) C Windows Forms uygulamam#.

Uygulama, çok sayıda alt form (bir kerede) barındıran ana bir form var. Bir kullanıcı çarptığındaCtrlFÖzel bir arama formu göstermek istiyorum. Arama formu uygulamada cari açık alt formun bağlı olacaktır.

*ChildForm_KeyDown* olay böyle bir şey kullanmayı düşünüyordum

   if (e.KeyCode == Keys.F && Control.ModifierKeys == Keys.Control)
        // Show search form

Ama bu işe yaramıyor. Bu olay bile bir tuşa bastığınızda ateş etmiyor. Çözüm nedir?

CEVAP
30 Aralık 2008, Salı


Muhtemelen KeyPreview formu özelliği True olarak ayarlamak için unuttum. ProcessCmdKey() yöntemi geçersiz kıldı genel çözüm:

protected override bool ProcessCmdKey(ref Message msg, Keys keyData) {
  if (keyData == (Keys.Control | Keys.F)) {
    MessageBox.Show("What the Ctrl F?");
    return true;
  }
  return base.ProcessCmdKey(ref msg, keyData);
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Disney Pets and Animals

    Disney Pets

    29 ŞUBAT 2012
  • Megan Parken

    Megan Parken

    19 Temmuz 2009
  • MusicDeluxeTV

    MusicDeluxeT

    14 Mayıs 2010