2015-07-21 37 views
0

我在我的宏中有一個用戶表單。我用一個標籤替換了ActiveX按鈕。每個ActiveX按鈕都有一個加速鍵,它們都像預期的那樣工作。將ActiveX按鈕更改爲標籤後,加速鍵不再使用標籤。我不確定。我會很感激任何建議讓加速鍵再次工作。感謝您的幫助Excel用戶表單標籤的加速鍵不起作用

+0

你是什麼意思,他們不工作?如果您將標籤上的加速鍵放在標籤上,則標籤順序中的下一個控件(可以獲得焦點)將獲得焦點。這沒有發生? Tab鍵順序中的下一個控件是什麼? –

+0

@ Dick Kuseika ........當用戶點擊Alt +時,沒有任何反應會發生,因爲我使用的是按鈕而不是標籤。下一個控件是另一個標籤。這個用戶表單中有許多框架,文本框和標籤。謝謝 – Shaves

+0

我想象它看到下一個控件是一個標籤,因爲它不能佔據焦點,什麼都不做。你想要它做什麼?你爲什麼從命令按鈕更改爲標籤? –

回答

1

Label控件的Accelerator屬性的行爲是將焦點設置爲Tab鍵順序中的下一個控件。 Commandbutton的加速器的行爲是調用它的Click事件。您無法從加速鍵調用標籤的單擊事件或任何其他事件。

如果您想使用標籤,您可以在標籤後面放置文本框,並在Textbox_Enter事件中放置任何您想要的代碼。我創建了兩個標籤和兩個文本框。我做了每個文本框1的高度和寬度,所以它們幾乎看不見。當標籤的加速器被按下時,焦點進入文本框,Enter甚至被觸發。

Private Sub TextBox1_Enter() 

    'do the thing the button would do 

End Sub 

有點黑客和一些額外的設置,但它的工作原理。

+0

@迪克Kusleika .........感謝您的信息。我最終將標籤更改回ActiveX按鈕,並且加速鍵再次工作。我很欣賞這些信息,並且將會銘記未來 – Shaves