2014-12-03 67 views
0

我已經用下面的代碼禁用一個ActiveX命令按鈕:Excel 2007中VBA格式化禁用的ActiveX命令按鈕標題

wks1.OLEObjects.Item("cmdTest2").Object.Enabled = False 

WKS1已設置爲工作表對象。禁用的命令按鈕正確顯示BackColor,但Caption文本從其ForeColor和Font組合更改爲具有白色陰影的中灰色文本。我想在命令按鈕被禁用時將其「灰化」,以便用戶接收到該按鈕不再起作用的可視提示。

我檢查了與Activex命令按鈕相關的屬性的MSDN。我看到一個Shadow屬性,但這是爲了在命令按鈕的外部放置陰影。

當使用VBA禁用命令按鈕時,是否有任何代碼可用於控制命令按鈕標題的格式?

+0

在不改變系統顯示命令按鈕的方式的情況下,無法執行所要求的操作。不過,你可以用按鈕上的圖像做你想做的。 – 2014-12-03 15:49:10

+0

謝謝,jbarker2160,快速回復。兩個問題 - 1.我需要做些什麼來改變我的系統顯示命令按鈕的方式,以及2.使用圖像(GREAT IDEA)是否要求圖像的尺寸與命令按鈕的尺寸相同? – 2014-12-03 16:25:03

+0

要改變系統將需要大量的黑客來允許陰影。圖像不一定會是相同的大小,但相同的長寬比會使它更漂亮。 – 2014-12-03 16:41:13

回答

0

通過試驗和錯誤,我碰巧發現Activex控件的「啓用」屬性在設置爲「False」時如何工作。從啓用狀態變爲禁用狀態將控件的文本(標題)更改爲帶有白色陰影的中灰色。我還沒有找到任何可以改變這種行爲的東西。它看起來一切 - 除了 - BackColor OF & H00E0E0E0 &!這個十六進制代碼的RGB等價物是RGB(224,224,224)。將Light Light BackColor應用於控件時,外觀變成灰色控件中的凹陷文本 - 正是我所需要的。

我希望這個簡單的修復可以幫助別人節省時間!