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

  • Bad Lip Reading

    Bad Lip Read

    22 Mart 2011
  • bashirsultani

    bashirsultan

    22 Mart 2010
  • Besnik Ibrahimi

    Besnik Ibrah

    27 Mart 2010