2016-12-15 151 views
0

我想讓用戶將鼠標懸停在三角形上,如下所示,文本框會彈出一些與該三角形相關的信息。 enter image description here如何:將鼠標懸停在形狀上顯示文本框

三角形繪製具有以下功能...

Public Sub drawTriangle(theRow As Integer, theColumn As Integer, Optional myColor As System.Drawing.Color = Nothing) 
     myColor = System.Drawing.Color.Black 
     Dim theShape As Microsoft.Office.Interop.Excel.Shape = xlWorkSheet.Shapes.AddShape(MsoAutoShapeType.msoShapeIsoscelesTriangle, (xlWorkSheet.Cells(theRow, theColumn)).Left + 18, (xlWorkSheet.Cells(theRow, theColumn)).Top, 15, 14) 
     theShape.Fill.ForeColor.RGB = ToBgr(myColor) 
     theShape.Line.ForeColor.RGB = ToBgr(myColor) 

    End Sub 

我一直沒能找到有關我會怎麼做任何的例子還是不錯的文檔,所以我想我會在這裏問。任何和所有的幫助非常感謝!

+0

此信息是否只讀?如果是這樣,你可以把它作爲附加到三角形的評論對象嗎? – vbnet3d

+0

@ vbnet3d它只會被讀取......您所描述的內容聽起來像是它會是完美的,只要它顯示出來的時候它會在盤旋時消失而不會被盤旋時消失 – Bob

+0

根據[MSDN](https:// msdn .microsoft.com/en-us/library/office/microsoft.office.interop.excel.range.addcomment.aspx),你可以添加評論到一個範圍 - 不確定一個形狀。 – vbnet3d

回答

2

根據MSDN,評論可以添加到範圍。爲了使其適用於您的應用程序,您只需選擇與您的形狀對應的範圍,然後調用AddComment()。

小區的數字座標可以被用於通過使用如下所示的代碼(source)來確定實際的單元名稱(即E5):

address = xlWorkSheet.Cells(RowVariable, ColVariable).Address 

這可以與隨訪

xlWorkSheet.Range(address).AddComment("This is a comment") 
+0

真棒,我真的很感激它。得到它的工作...不得不問,任何方式使評論框更大或評論框中的字體更小? – Bob

+0

不幸的是,我沒有任何經驗 - 但由於它可以手動完成,我認爲它必須通過互操作。 [從這裏開始](https://msdn.microsoft.com/en-us/library/office/microsoft.office.interop.excel.comment_properties.aspx),並注意註釋有一個「Shape」屬性。我希望你需要的東西可能被埋在那裏。 – vbnet3d

+0

啊,那很美。再次感謝!! – Bob