2012-12-14 45 views
8

Tôi muốn có một phím tắt chuỗi cho chương trình tôi đang phát triển (trong C# .net) để truy cập các nút khác nhau trong hệ thống menu.Phím tắt trình tự phím tắt cho menu

Ví dụ: Ctrl + W, O

Đầu tiên, người dùng sẽ nhấn Ctrl + W, tiếp theo là O

Visual studio sử dụng này phương pháp cho khá một vài trong số các phím tắt menu của nó.

Khi tôi đang chỉnh sửa một menu Tuy nhiên, tôi là giới hạn chỉ có một phím tắt Ctrl + W hay chỉ O, tôi không thể trình tự chúng.

Điều này có thể thực hiện với khung hiện có không?

Trả lời

2

Đơn giản chỉ cần bạn có thể làm điều này:

private void Form1_KeyDown(object sender, KeyEventArgs e) 
{ 
    if (previousKeyEvent != null) 
    { 
    if (previousKeyEvent.Modifiers == Keys.Control && previousKeyEvent.KeyCode == Keys.W && e.KeyCode == Keys.O) 
    { 
     MessageBox.Show("Ctrl + W then O"); 
    } 
    else 
    { 
     MessageBox.Show("Not handled"); 
     previousKeyEvent = null; 
    } 
    else 
    previousKeyEvent = e; 
    } 
} 

Những điều cần xem xét

  • tổ hợp phím đơn - Xử lý những người không phạm vi của một sự kiện quan trọng trước.
  • Nhãn để hiển thị rằng bạn đang đợi đầu vào của người dùng , giống như studio trực quan.
  • Sử dụng thuộc tính ShortCutKeyDisplayString để hiển thị lối tắt tùy chỉnh bên cạnh mục menu.
+0

Rất tiếc, sẽ mất nhiều nỗ lực hơn để thực hiện hơn tôi sẵn sàng thực hiện. Tôi đã có thể xem xét tuy nhiên, nếu không cho thực tế là trong trình đơn, điều này không hiển thị nó như là phím tắt. – Randomman159

+0

@ Randomman159 Nếu bạn không sẵn sàng tạo ra một mức độ nỗ lực để đạt được điều gì đó mà bạn cần làm - với tư cách là nhà phát triển, có lẽ bạn sẽ không nhận được rất nhiều nhiệm vụ mà bạn tự đặt ra. – LukeHennerley

+0

Đó không phải là những gì tôi muốn nói. Tôi sẽ cố gắng nói lại. Một trong những ưu tiên trong vấn đề này, hiển thị lối tắt bên cạnh mục trong trình đơn, vì vậy khi người dùng sử dụng lặp lại nó, họ sẽ có lối tắt ngay tại đó để họ xem. Theo giải pháp của bạn, không kết hợp ưu tiên này, nếu tôi thực hiện nó, nó sẽ chỉ là tạm thời. Do số lượng lớn các khóa kết hợp (rất lớn) cần thiết, nó có vẻ giống như một số lượng công việc unideal cho một giải pháp tạm thời. Nếu có cách nào để sửa đổi các phím tắt được hiển thị trong menu lúc chạy, tuy nhiên, giải pháp này sẽ rất tuyệt. – Randomman159