|
|
|||||||||
|
|||||||||
| |||||||||
|
|
|
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
|
Picture box control is hard work
Hi,
I am using a picture box in my application to display a bitmap. However on a radio button it should clear the contents of the bitmap. I have been trying for ages to find a way to clear the contents. However im not getting anywhere. My app is kinda like mouse spy so I copy the contents under the mouse to the box. So you should think there would be a command to clear the contents but I cant find any documentation for visual c++ on the stupid picture box control |
|
#2
|
||||
|
||||
|
Hi,
you need to set the picture property of picture box to nothing. in VB i use the following.try similar statement in VC as well.it should work. Set Picture1.Picture = Nothing
__________________
SR - webshiju.com www.lizratechnologies.com "The fear of the LORD is the beginning of knowledge..." |
|
#3
|
|||
|
|||
|
Yeah VB makes super light work of this,
However can you think of the command I need to send to the control? There must be something. |
|
#4
|
|||
|
|||
|
did you try "Picture1.Picture=null;" ? this would be the corresponding command to the vb one.
i donīt know that much about windows/c but in delphi i use: Picture1.Bitmap.Free(); Picture1.Bitmap:=new TBitmap(); you should be able to find the corresponding commands for c. did this help?
__________________
-- Manuel Hirsch - Linux, FreeBSD, programming, administration articles, tutorials and more. |
|
#5
|
|||
|
|||
|
Well you say set picture1 = null etc but in c its does not seem anywhere near as easy :-(
I have implemented a slight workaround which is to have 2 bitmaps one which never changes and one which shows the bitmap, I just toggle the visible state. Its not great but it works fine. Unless someone actually has any C code to set the picturebox control back to nothing (ie show the button face colour again). Thanks though |
|
#6
|
|||
|
|||
|
does my second suggestion not work? it should...
you destroy the old bitmap (free the memory) and just create a new one. let me try to translate the lines to c: freemem(Picture1.Picture); Picture1.Picture:=new(TPicture); did this help? (maybe donīt destroy the picture but the bitmap inside... this got me stuck for some hrs too) |
|
#7
|
||||
|
||||
|
The following will work for you.you just release the picture box after the use:
Picture1->Release(); |
|
#8
|
|||
|
|||
|
this seems to be going on :-)
Im using straight C so I dont actually have a ref to the control I have to send it messages. So im busy trying to find out what to send it to clear itself :=-) |
|
#9
|
||||
|
||||
|
Are you using the Active-X CPictureBox control or just a plain old Bitmap?
|
|
#10
|
|||
|
|||
|
Just a plain old bitmap control in bog standard C.
I have to send messages to controls since I dont actually have a physicall reference to them. |
|
#11
|
||||
|
||||
|
Have you tried sending a WM_HIDE message to the control?
|
|
#12
|
|||
|
|||
|
yeah but that completely hides the control which is no good :-)
There has to be a simple way to send a clear message to a control (picture control) |
![]() |
| Viewing: Dev Shed Forums > Programming Languages > C Programming > Picture box control is hard work |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|
|