|
Hi,
I have editing of sub items enabled in a tree control. Is there any way that I can restrict the users input to numbers as you can with a normal CEdit control?
Thanks
Matthew
also, if anyone knows this it would be great. If I activate the IME during editing an item, the input isn't displayed very well at all as the bounding box for the text when editing begins isn't sufficient. Is there are fix for this?
cheers
Matthew
|
|
|
|
|
You'll probably have to subclass the tree edit control and catch the keystrokes.
Easier, slightly different way is to handle TVN_ENDLABELEDIT notification. In the handler, you can verify the text typed into edit control. If verification fails, you'd display msgbox with appropriate text, then call CTreeCtrl::EditLabel.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Top idea. Will do. Cheers. Matthew
|
|
|
|
|
I need to get a certain look and feel that involves placing controls on top of each other. IN particular, atm, I'm using a CStatic-derived class to change the background colour to the window colour (usually white), and then it has a client edge on it to make it look like a standard edit box.
On top of these I then need a combination of static controls, bitmaps, buttons, edit boxes and radio buttons.
(The look I'm going for is like the IE search window, but without using HTML).
My problem is that when controls are placed above another control they then don't receive focus, so I can't enter text or click on buttons.
So, what can I do to 'deactivate' the bottom control? I've tried setting it to the bottom of the Z-order and everything else above it, but no joy
Is the answer to just paint it on to the dialog using Draw3DRect and FillSolidRect? In which case should it be in the OnPaint handler and will the controls above it get drawn properly?
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Where are you going to place the 'layered' controls? In the dialog or CView-derived class?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
They're in a dialog-derived class, on a CFormView-derived class.
Basically, I want to reproduce the IE search window on a tab page in a tab control which is displayed on a CFormView-derived class, but I don't want to use an html window.
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
So what's the reason for static control? Can't you just handle WM_ERASEBKGND?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
You mean in the dialog, to draw the required effect underneath?
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Exactly. I'm assuming that you need static for some fancy background stuff - is that correct?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Using a static control just gave me a quick and easy way to produce something that looked like a normal window (sunken 3D edges, window coloured background).
My poblem is that after trying several attempts with SetWindowPos, etc I could either have the controls painted properly above the static, giving the requried look, or I could have the functionality of the controls (button clicks and entering text in to edit boxes), but they are painted under the static
So what's a better way? Handle WM_ERASEBKGND in the dialog and just paint using draw3drect and fillsolidrect and dispense with the static control?
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Well, what's easier:
1) creating a static and handling WM_SIZE to cover the dialog with static
2) handling WM_ERASEBKGND and drawing dialog surface in the 'sunken' state?
I'd go for (2). For actual backgroud drawing, I'd call DrawEdge.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
OK, that works, thanks (i've gone for the WM_ERASEBKGND option).
Next question, how do I change the background colour for a radio button?
I've tried extending the CButton class and handling either WM_PAINT or WM_ERASBKGND or WM_CTLCOLOR or WM_CTLCOLOR_REFLECT, but none of the handler's got called
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Derek Lakin wrote:
I've tried extending the CButton class and handling either WM_PAINT or WM_ERASBKGND or WM_CTLCOLOR or WM_CTLCOLOR_REFLECT, but none of the handler's got called
Sounds strange. While there are some problems with WM_CTLCOLORBTN and push buttons, your WM_ERASEBKGND and WM_PAINT handlers should be called without problems.
You may have a look at May'97 issue of MSJ - in the C++ QA column there's a discussion about providing custom backgrounds for CFormView-derived classes.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Thanks Tom, I'll look into it
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Thanks Tom. THe problem was I hadn't added the relevant DDX_Control calls
The required handler was for WM_CTLCOLOR_REFLECT.
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Hello All,
How is it possible to add a ToolTip to a StaticText or an EditBox?
|
|
|
|
|
Hello All,
How is it possible to add a ToolTip to a StaticText or an EditBox?
SAS
|
|
|
|
|
Assuming that your controls are hosted in modal dialog, check KB article Q141758 HOWTO: How to Add Tooltips for Controls to an MFC Modal Dialog Box
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
|
The control needs a unique id and the SS_NOTIFY style set for it to have a tooltip.
Roger Allen
Sonork 100.10016
If I'm not breathing, I'm either dead or holding my breath.
A fool jabbers, while a wise man listens. But is he so wise to listen to the fool?
|
|
|
|
|
hi:
how to get the URL form the internet shortcut (the file in c:\windwos\history)?
I get the file name of the intetnet shortcut (the file in c:\windwos\history) through ISHellFolder,I think the filename is correct,because I can get the icon of the intetnet shortcut with the filename.but how can I get its tatget URL with this filename?
thanks;
benben
|
|
|
|
|
once you get the file, the structure is like an .ini file:
[InternetShortcut]
URL=http://www.amazon.com
Hope this helps.
|
|
|
|
|
Our Purpose is to Launch an application , once launched and when closed by the user it performs the task that we want that application to.
but if Terminate that application by TerminateProcess() , since its a abnormal closing , it does not perform what it should perform on a Gracefull exit.
Now what I was thinking of is , If we could some how get HWND of this Process which we have created by CreateProcess() , then we could send WM_QUIT to this Hwnd , which would then do the task Grace fully, see what I am saying .
Now problem is how to get this Damn HWND ..
Help !!
Abhishek Narula
"Learn to appreciate others ... World would appreciate you"
|
|
|
|
|
|
I feel embarassed
This is indeed the right solution.
Ignore my post please [which is the most round about way to do this ]
Nish
Bow wow wow,
Yippee yo yippee yay,
My miniputt high,
Is now 30 yay.
|
|
|
|