Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I understand now that the images on buttons are a picture and a mask.
Would it be possible to alter the mask of this image? I use a temporary button to get some FaceID images in an ImageList like this: 'Add an empty toolbar Set NewToolbar = Application.CommandBars.Add _ (Name:="FaceIds", temporary:=True) NewToolbar.Visible = False On Error Resume Next For i = 0 To 14 Set NewButton = NewToolbar.Controls.Add _ (Type:=msoControlButton, id:=2950) NewButton.FaceId = FaceIDNumbers(i) NewButton.CopyFace Set iImageName = .ImageList1.ListImages.Add(, , PastePicture(xlBitmap)) NewButton.Delete Next On Error GoTo 0 NewToolbar.Delete Set NewToolbar = Nothing PastePicture is the routine written by Stephen Bullen. The trouble is that I can't alter the background colour of this image and it is always like a grey/brown colour. I can export the image and mask separately (from the Excel help): Sub GetButtonImageAndMask(cbButton As CommandBarButton) Dim picPicture As IPictureDisp Dim picMask As IPictureDisp With cbButton 'Get the button image and mask of this CommandBarButton object Set picPicture = .Picture Set picMask = .mask 'Save the button image and mask in a folder. stdole.SavePicture picPicture, "c:\FaceIDPicture" & .FaceId & ".bmp" stdole.SavePicture picMask, "c:\FaceIDMask" & .FaceId & ".bmp" End With End Sub So, maybe it is somehow possible to alter the mask. I can see there is the Render method of this mask, but couldn't find any information how to use this. Any ideas how to do this? RBS |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
All solved this now with the help of Peter T.
Very simple solution, exporting to file, altering the image in a graphics program (mask the background colour) and then import in the ImageList control. All working fine and as a bonus I don't need PastePicture routine of Stephen Bullen anymore. RBS "RB Smissaert" wrote in message ... I understand now that the images on buttons are a picture and a mask. Would it be possible to alter the mask of this image? I use a temporary button to get some FaceID images in an ImageList like this: 'Add an empty toolbar Set NewToolbar = Application.CommandBars.Add _ (Name:="FaceIds", temporary:=True) NewToolbar.Visible = False On Error Resume Next For i = 0 To 14 Set NewButton = NewToolbar.Controls.Add _ (Type:=msoControlButton, id:=2950) NewButton.FaceId = FaceIDNumbers(i) NewButton.CopyFace Set iImageName = .ImageList1.ListImages.Add(, , PastePicture(xlBitmap)) NewButton.Delete Next On Error GoTo 0 NewToolbar.Delete Set NewToolbar = Nothing PastePicture is the routine written by Stephen Bullen. The trouble is that I can't alter the background colour of this image and it is always like a grey/brown colour. I can export the image and mask separately (from the Excel help): Sub GetButtonImageAndMask(cbButton As CommandBarButton) Dim picPicture As IPictureDisp Dim picMask As IPictureDisp With cbButton 'Get the button image and mask of this CommandBarButton object Set picPicture = .Picture Set picMask = .mask 'Save the button image and mask in a folder. stdole.SavePicture picPicture, "c:\FaceIDPicture" & .FaceId & ".bmp" stdole.SavePicture picMask, "c:\FaceIDMask" & .FaceId & ".bmp" End With End Sub So, maybe it is somehow possible to alter the mask. I can see there is the Render method of this mask, but couldn't find any information how to use this. Any ideas how to do this? RBS |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Change button image | Excel Discussion (Misc queries) | |||
Paste Button Image | Excel Discussion (Misc queries) | |||
2007 - Customize Button Image | Setting up and Configuration of Excel | |||
Filling command button with image | Excel Programming | |||
upload a button image | Excel Programming |