|
TechAvtar wrote: How to do this?
By removing the CBS_SORT style. You can do this at design time or at run time."One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
Hi,
I met a problem with inserting a ole control into windowless richedit. I want the ole control draw something, and can response to the mouse-move, lbutton-down message and etc. The control has implemented IOleInPlaceObjectWindowless interface, and other necessary interfaces. But "OnWindowMessage" can't be called by richedit itself, so i have to query the IOleInPlaceObjectWindowless interface from IOleObject and call it. I am wondering why should i call the method myself instead of richedit. There is any suggestions from you? I am hoping for it.
|
|
|
|
|
Hi,
Is it possible to gain the style information of the drop down list of a CComboBox object?
I want to use it for reference to determine why a CListBox object I am creating does not behave in the same way.
TIA
Tony
|
|
|
|
|
Use GetWindowLongPtr with the handle of the combo box.
Specify GWL_STYLE as the second parameter.
It will return a LONG_PTR value.
Do a bitwise AND to check for the styles CBS_DROPDOWN and CBS_DROPDOWNLIST .
|
|
|
|
|
maycockt wrote: Is it possible to gain the style information of the drop down list of a CComboBox object?
Strictly speaking, a CComboBox object is not the same as a combobox control.
In any case, see if GetComboBoxInfo() is of any help."One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
Hi,
I have to convert a CString (ie. "5.00" or "5,00") to float using Comma as separator and obtains something like this as result 5,00000 .
Thank you for help.
|
|
|
|
|
|
it work now thank you
|
|
|
|
|
Thanks for acknowledging
|
|
|
|
|
Hello,
I´m developing a softphone and using asterisk 1.6 as server.
By sending audio from a wavefile in 20ms blocks over RTP, on the receiver
the stream will be played out too fast. If I´m doing a pause of 20ms before sending
each packet, it is played out well.
Is this problem on the timestamp?
I´m initializing the timestamp with 0 and then incrementing it with 160 like RFC 3550 said.
Before sending I´m converting the value with htonl() To Network Byte Order.
The softphone run on Windows.
What could I do false?
Best Regards,
Crazy
|
|
|
|
|
Could somebody know how to hide MFC dialog to tray icon in the bottomright Toolbar?
I can open the MFC dialog by click the tray icon or select some menu items I set.
|
|
|
|
|
They are two different things.
You can create a tray icon using Shell_NotifyIcon .
And you hide the dialog using ShowWindow(SW_HIDE) .
When the user clicks on the tray icon, you will get a notification message that you specified in the uCallbackMessage parameter of the NOTIFYICONDATA structure.
There you can create a popup menu using CreatePopupMenu and TrackPopupMenu .
|
|
|
|
|
Hi...
I have createed a dll. Name is
CMyClass
my main calss is
void CTestDLLDlg::OnOK()
{
CMyClass objMyClass;
UpdateData(true);
CString str = "Some text";
CString strResult = objMyClass.SayHello(str);
}
I have the foolowing function in MyClass dll
CMyClass::SayHello(CString strName)<br />
{<br />
Hwnd dlg;<br />
SetDlgItemTextW(dlg,IDC_EDIT1,strName);<br />
return "Hello " + strName;<br />
}
Dll class window id is IDD_DIALOG1 and class name is CMyClass. Here i have to set strName in IDC_EDIT1. How to do this?
Any help will be appriciated...
Thanks...G.Paulraj
|
|
|
|
|
Paulraj G wrote: Hwnd dlg;
SetDlgItemTextW(dlg,IDC_EDIT1,strName);
Here you are calling SetDlgItemTextW() on an invalid handle. May be you can pass a valid dialog handle to the function SayHello().
|
|
|
|
|
Hi All,
follow the following code please:
int i = 2;
i = ++i + (++i)
cout<<i;
logically the="" code="" should="" print="" value="" '7'="" but="" i="" am="" getting="" '8'="" as="" output.
why="" is="" it="" so?
thanks="" in="" advance
regards
pankaj<div="" class="signature">French is the language of love, for everything else there is c++ ...(anonymous)
|
|
|
|
|
You can disassemble and see how exactly the expression is evaluated.
When disassembled you can see something like follows which I think is self explanatory.
mov eax,dword ptr [i]
add eax,1
mov dword ptr [i],eax
mov ecx,dword ptr [i]
add ecx,1
mov dword ptr [i],ecx
mov edx,dword ptr [i]
add edx,dword ptr [i]
mov dword ptr [i],edx
|
|
|
|
|
would u please let me know how to disassemble ? French is the language of love, for everything else there is c++ ...(anonymous)
|
|
|
|
|
I assume you are using Visual Studio. Put a break point on the code. Hit F5. When the break poin is reached, right click on the source to see a context menu having an item 'Go to Disassembly'.
|
|
|
|
|
I am in college and we are using Turbo C++.
How can i perform the same here??
Thanks & Regards
PankajFrench is the language of love, for everything else there is c++ ...(anonymous)
|
|
|
|
|
I am sorry, I have no idea about how to do this in Turbo C. But you can take a look at the assembly code in my previous post to understand why 8 is displayed.
|
|
|
|
|
Pankaj D.Dubey wrote: int i = 2;
i = ++i + (++i)
cout<<i;
logically the="" code="" should="" print="" value="" '7'="" but="" i="" am="" getting="" '8'="" as="" output.
why="" is="" it="" so?
<="" blockquote="">
Actually, 8 is just as a correct answer as 7. To research this, search for the term "sequence points".
In ++i + (++i) for each ++i, i is first incremented, then the value is used. Also, the add will be done last. This does not fully define the order of evaluation of everything - and the implementation is free to choose the rest of the order.
So it could do things in the order you were thinking of. Another equally valid order is:
do the first increment ( i gets 3),
do the second increment ( i gets 4 ),
add current i to current i (8)
The bottom line is that you shouldn't write expressions where parts of the expression have side effects that could alter the value of other parts of the expression.Please do not read this signature.
|
|
|
|
|
If i take another variable say 'Y' and perform the evaluation in that like
Y = ++i + (++i);
cout<<y;
it will="" give="" '7'.="" now="" whats="" the="" reason="" behind="" this="" concept.<div="" class="signature">French is the language of love, for everything else there is c++ ...(anonymous)
|
|
|
|
|
Exact same reason. You are using exactly the same expression on the right side of the equals sign. Since you didn't change anything relevant, nothing changed.
Edit: Yes, you did change the expression on the left side of the equals sign and got a different answer, but the issue is unchanged.Please do not read this signature.
modified on Wednesday, February 24, 2010 11:05 AM
|
|
|
|
|
Exactly
thanks mate, thanks a ton
Thanks and Regards
PankajFrench is the language of love, for everything else there is c++ ...(anonymous)
|
|
|
|
|
It is safer not to use such code because you will get different results in different compilers.
IIRC I got different results in VC 6.0 when compiled in Windows application and console application.
|
|
|
|