|
Did you try sending a copy of the message to the control from your dialog or frame which houses the control (SendMessage , PostMessage ).
Nibu thomas
Software Developer
Faqs by Michael dunn
|
|
|
|
|
I think that is a last resort... !
As this control is supposed to be a common, I need to avoid such dependencies.
- NS -
|
|
|
|
|
NS17 wrote: I think that is a last resort... !
As this control is supposed to be a common, I need to avoid such dependencies.
Well that is how keyboard messages are set to function. If a control is to receive input from keyboard it should have the Input Focus. This the rule. You cannot break that.
Nibu thomas
Software Developer
Faqs by Michael dunn
|
|
|
|
|
mmm....
So now I am planning to expose a function to allow the app to call in its PreTranslateMessage, like the RelayEvent() of ToolTip Ctrl. What's your opinion?
- NS -
|
|
|
|
|
NS17 wrote: So now I am planning to expose a function to allow the app to call in its PreTranslateMessage, like the RelayEvent() of ToolTip Ctrl. What's your opinion?
Well if you want such functionality that's an option. You can also take look at the FORWARD_WM_********* group of macros which could also help you.
Nibu thomas
Software Developer
Faqs by Michael dunn
|
|
|
|
|
Ok, thank you... Let me try
- NS -
|
|
|
|
|
Hey guys,
I would like to know what happends with memory in this code,
CArray<int,int> myArray;
//my array could be 0 or can grow upto 1000
myArray.SetSize(0,1000);
for (int j = 0; j < 900; j++)
{
myArray.Add(j);
}
//what is below line going to do?
myArray.FreeExtra();
Is SetSize & FreeExtra functions anyway improves anything here or it would be better of without these lines.
Thanks
Mohan
|
|
|
|
|
|
CArray<CPoint,CPoint> myArray;<br />
int i;<br />
<br />
myArray.SetSize(32, 128);<br />
<br />
CPoint* pPt = (CPoint*) myArray.GetData();<br />
for (i=0;i < 32;i++,pPt++)<br />
*pPt = CPoint(i, 2*i);<br />
<br />
<br />
myArray.SetSize(5, 128);<br />
myArray.FreeExtra();
Look at the above code .
Hope now u can understand the use of FreeExtra.
Appu..
"If you judge people, you have no time to love them."
|
|
|
|
|
HI Mohan,
function FreeExtra():
Frees any extra memory that was allocated while the array was grown. This function has no effect on the size or upper bound of the array
function SetSize():
Use this function to set the size of your array before you begin using the array. If you do not use SetSize, adding elements to your array causes it to be frequently reallocated and copied. Frequent reallocation and copying are inefficient and can fragment memory
...referenced from MSDN oct 2001
Knock out 'T' from CAN'T ,
You 'CAN' if you think you 'CAN'
|
|
|
|
|
With SetSize your code runs faster - memory for 1000 items is allocated and not copied\extended during adding new items. Without it array will allocate new memory several times, copying all items to new location.
FreeExtra just free unused memory - but it have to copy whole array to new location, which cost time. So I almost never use it - if you will want to add new item afterwards, you will cause array to copy items again.
Igor Green
http://www.grigsoft.com/ - files and folders comparison tools
|
|
|
|
|
Igor,
I kinda got a clue, thanks. But i got a question...
I load the array only once when my application loads & then i just use it for reference purpose only, in this case if i include SetSize(0,1000) & the array loads only 500 items, will that mean the memory for other 500 still exists & not released?
Thanks.
Mohan
|
|
|
|
|
|
can anyone teach me how to get string input and display it in the blackbox?
fe8her
|
|
|
|
|
Prinz Ryoiji wrote: it in the blackbox?
Is this a Console Application?
Nibu thomas
Software Developer
Faqs by Michael dunn
|
|
|
|
|
yupe..
win32 console application..
|
|
|
|
|
That blackbox is called console.
Well I wrote an example for you and then I lost the whole thing (Page cannot be displayed).
Well CG has done that for you...
Nibu thomas
Software Developer
Faqs by Michael dunn
|
|
|
|
|
owh..ok..
thanks...
|
|
|
|
|
Nibu thomas wrote: That blackbox is called console.
Also called "DOS-Box" in some books ...
Maxwell Chen
|
|
|
|
|
owh..ok..
thanks a lot!
|
|
|
|
|
You can change the black box to green box...
Just add this line of code
system("color 2f"); :->
Nibu thomas
Software Developer
Faqs by Michael dunn
|
|
|
|
|
Nibu thomas wrote: change the black box to green box...
Maxwell Chen
|
|
|
|
|
|
Nibu thomas wrote: Color 2f
Yeah, I know. I was trying to show you a green face. ;P
Maxwell Chen
|
|
|
|
|