ThaiDieuAnh
Thành viên hoạt động
![](/diendan/data/PhoToDanhHieu/gold.gif)
![](/diendan/data/PhoToDanhHieu/gold.gif)
![](/diendan/data/PhoToDanhHieu/gold.gif)
- Tham gia
- 8/8/16
- Bài viết
- 139
- Được thích
- 24
- Nghề nghiệp
- Xây dựng
Em muốn add một Face Id vào Command button thì phải làm thế nào ạ, mong các anh chị giúp đỡ, em xin cảm ơn
Như ta đã biết, CommandButton có thể nhận hình theo dạng ảnh đã lưu trên đĩa hoặc ảnh dạng IPictureDispEm muốn add một Face Id vào Command button thì phải làm thế nào ạ, mong các anh chị giúp đỡ, em xin cảm ơn
Sub Test2()
Dim IPic As IPictureDisp
Set IPic = Application.CommandBars.GetImageMso("Cut", 20, 20)
Sheet1.CommandButton1.Picture = IPic
End Sub
Hiện tại em vận dụng cách của bác và cái này ạ : http://soltechs.net/CustomUI/imageMso01.asp?gal=3&count=no nhưng cảm giác vẫn thiếu thiếu, ví dụ cái FaceId = 595 hoặc 596 em tìm đỏ mắt không thấy đâu để rò tênCó một câu hỏi đặt ra là: Giả sử ta chỉ biết FaceId là 1 con số nào đó nhưng chẳng biết cái nút có chứa FaceId ấy tên gì (chẳng hạn biết FaceId = 22). Vậy tôi sẽ lấy FaceId này bằng cách nào để gán vào CommandButton?
(Tạm thời tôi cũng có 1 cách nhưng dài quá, muốn tham khảo ý kiến mọi người)
Không có cái FaceId 595 đâu bạn àHiện tại em vận dụng cách của bác và cái này ạ : http://soltechs.net/CustomUI/imageMso01.asp?gal=3&count=no nhưng cảm giác vẫn thiếu thiếu, ví dụ cái FaceId = 595 hoặc 596 em tìm đỏ mắt không thấy đâu để rò tên
Cách này được không anh.Có một câu hỏi đặt ra là: Giả sử ta chỉ biết FaceId là 1 con số nào đó nhưng chẳng biết cái nút có chứa FaceId ấy tên gì (chẳng hạn biết FaceId = 22). Vậy tôi sẽ lấy FaceId này bằng cách nào để gán vào CommandButton?
(Tạm thời tôi cũng có 1 cách nhưng dài quá, muốn tham khảo ý kiến mọi người)
Function FaceIdToIPic(ByVal Face_ID As Long, ByVal PicSize As Long) As IPictureDisp
Dim MyImageList As MSComctlLib.ImageList, IPic As IPictureDisp, TmpCBB As Office.CommandBarButton
On Error Resume Next
Set TmpCBB = CommandBars(1).Controls.Add(1)
TmpCBB.FaceId = Face_ID
Set MyImageList = New ImageList
With MyImageList
.ImageHeight = PicSize
.ImageWidth = PicSize
.UseMaskColor = True
.ListImages.Add 1, "M", TmpCBB.mask
.MaskColor = vbWhite
.ListImages.Add 2, "MM", .Overlay("M", "M")
.MaskColor = vbBlack
.BackColor = vbBlack
.ListImages.Add 3, "P", TmpCBB.Picture
Set FaceIdToIPic = .Overlay("P", "MM")
End With
TmpCBB.Delete
End Function