Add Face Id vào Command button (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ThaiDieuAnh

Thành viên hoạt động
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
 
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 IPictureDisp
Vậy nhiệm vụ của ta là làm sao lấy được FaceId rồi convert nó ra dạng IPictureDisp là xong
Giả sử bạn muốn lấy FaceID của nút Cut đi nha, ta sẽ làm như sau:
Mã:
Sub Test2()
  Dim IPic As IPictureDisp
  Set IPic = Application.CommandBars.GetImageMso("Cut", 20, 20)
  Sheet1.CommandButton1.Picture = IPic
End Sub
Ghi chú:
- Con số 20 là kích thước của hình
- CommandButton1 được vẽ trên Sheet1
 
Upvote 0
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)
 
Upvote 0
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)
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
 
Upvote 0
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
Không có cái FaceId 595 đâu bạn à
Bạn muốn biết FaceId nào được dùng để gán cho các nút thì có 2 cách:
- Hoặc là mò
- Hoặc là lên mạng tìm danh sách

Capture.JPG
 
Upvote 0
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)
Cách này được không anh.
Mã:
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
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom