|
Hi
I have a Picture Controls (IDC_STATIC) on a DIALOG
and I wish to Transparent the corners of the
Picture in the Control
but when i use the
SetWindowRgn ( HWND hWnd, HRGN hRgn, BOOL bRedraw );
nothing happen.
maybe because it a STATIC winds ?
any suggestion ?
|
|
|
|
|
Probably because it's a control it draws itself the way it chooses (ok, the way it was written).
You could just draw the picture yourself and clip it any way you want.
Mark
|
|
|
|
|
I need help learning how to convert a WCHAR* which points to a string such as L"118.000" to a FLOAT64.
I am trying to do it like this:
if(IsValidComFreq(freq))
{
wchar_t** end = NULL;
m_Com3Stby = wcstol(freq, end, 10);
}
** Where:
FLOAT64 m_Com3Stby; // a double
WCHAR *freq = L"118.000"; // for example
But I am guessing this is wrong. What is the best way to do this?
Thanks.
|
|
|
|
|
How about _wtof() instead of wcstol()?
Mark
|
|
|
|
|
|
You should use wcstod instead - it returns a double. Your wcstol only returns a long, so it will just return 118 (even if your input was 118.243).
Hope that helps.
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
Thanks, that was the ticket. Stupid me forgot the diff between a long and a double.
|
|
|
|
|
I do not think that FLOAT64 is a proper type... Are you sure that is what you need to convert to, and not int64 or double ?
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|
|
It could be a typedef or define somewhere ... Most likely for double .
If you decide to become a software engineer, you are signing up to have a 1/2" piece of silicon tell you exactly how stupid you really are for 8 hours a day, 5 days a week
Zac
|
|
|
|
|
FLOAT64 is an MS typedef that is commonly used by those of us that program for Windows.
|
|
|
|
|
Hmmm... Not viewed my profile, eh?
I have been programming on Windows ever since the 3.0 days and I have never seen FLOAT64 . I would bet that the typedef is not found in a common (common as is commonly available) MS SDK file. In fact, the only pseudo-Windows-specific place I can find it is in MSIL, and this IS the VC++ board...
Anyway... A 64-bit floating point variable is a double, and that is likely the real type behind the typedef. In that case, something like ::_wcstod(...) should do the trick.
Peace!
-- modified at 8:24 Wednesday 13th December, 2006
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|
|
Just goes to show that:
a) The length of time you have attempted to do something is not necessarily directly proportional to the amount you know about something.
and
b) it does not matter if you think something is "proper" or not, but it certainly does tell us (along with your reference to your profile) about you.
Peace back at ya.
|
|
|
|
|
A) and in some cases, it is... And I at least know that a double is 8 bytes wide, thus is a 64-bit floating point type and not a integer value. And as you have demonstrated, your point also applies the other way.
You still have not identified where FLOAT64 is a MS typedef that is commonly used. I also did not notice it in my driver SDK and IFS SDK files. And even if it was in the IFS SDK, the Platform SDK is commonly available, but the IFS SDK is not (or at least was not), so common would not apply.
B) When you have a wide and deep coverage of a certain area, your thoughts on what is proper or not do matter. Note that they do not have to matter to you.
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|
|
FLOAT64 is not a MS typedef. It does not exist in VC++ v6.0 or v7.1 nor is it listed on any page in MSDN that I could find. There is a float64 defined but VC++ is case sensitive and this is the VC++ forum.
|
|
|
|
|
It is a Microsoft typedef, just not one you have seen, which is EXACTLY why I told you it IS a Microsoft typedef, and part of a very long MS header that you just don't happen to have on your machine.
Not everything used by MS is in the docs or on the web (or in your header files).
|
|
|
|
|
Yeah, I am fairly confident that MSDN and Google combined cover the area of "common" quite well.
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|
|
Hi, I have a question
I want to update my table with values like this
CString valuestr="('"+m_comm+"','"+m_sp+"')";<br />
CString req="UPDATE T_Port SET CommPort='%s', Speed=' s'"+valuestr;<br />
database.ExecuteSQL(req);
And I have an error:
non valide use of '!','.',or'()' in expression "%S'('COM4','9600')'
|
|
|
|
|
zizzzz wrote: CString req="UPDATE T_Port SET CommPort='%s', Speed=' s'"+valuestr;
What is %s in your query? I do not believe that format specifiers are allowed in queries. You might be better off rewriting your query as :
CString req;
req.Format("UPDATE T_Port SET CommPort='%s', Speed='%s'", m_comm, m_sp);
database.Execute(req);
|
|
|
|
|
thank's a lot
|
|
|
|
|
zizzzz wrote: CString req="UPDATE T_Port SET CommPort='%s', Speed=' s'"+valuestr;
The %s would only be valid if you were using CString::Format() .
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
This is method is ripe for SQL injection attacks.
This will never work.
CString req="UPDATE T_Port SET CommPort='%s', Speed=' s'"+valuestr;
Try something like this.
CString req=_T("");
req.Format(_T("UPDATE T_Port SET CommPort='%s', Speed=' s'"), valuestr);
But first read this article about dealing with SQL injection attacks SQL Injection Attacks and Some Tips on How to Prevent Them[^]
I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:
|
|
|
|
|
Hello,
I have been using _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF) to check for memory leaks and a memory leak has been at arcex.cpp, Line 94. It appears to me that memory is allocated when an Archive Exception is thrown. If it is possible, how can I get rid of this memory leak? Suggestions or help are appreciated.
Mike
|
|
|
|
|
mla154 wrote: If it is possible, how can I get rid of this memory leak?
Catch the exception and delete the CArchiveException object?
|
|
|
|
|
Hi everyone,
does anyone use the MFC Components from BCGSoft?
If yes :
In my project i add 126 Columns to a grid, but i show only 11 ( rest of them are hidden )
But it takes a lot of time to refresh ( redraw ) the grid.
If i test the same project with only the visible columns ( so an entire only 11 columns in the grid ) ... the refresh is fast.
I see this effect also with a sliding DockingControlbar.
On the Grid with (entire) 11 Columns, it slides very fast.
And on the Grid with 126 Columns (115 hidden) it doesn't slide fast, nearly jerking.
Is it a bug or why does it happen?
Because in each case, the grid shows only 11 columns and must redraw these 11 columns ( not the 115 hiddens )
Big thanks
|
|
|
|
|
While I have used them for ~2 years now, and I do not have much compliants about them, the code is written like a MFC developer that just discovered all the wrong ways to abuse CString . As a result, much of the string-manipulation code is far from optimal, and if you profile the grid, I would bet that much of the time is spent messing around with string data during the drawing phases.
It also may have naive collection code as well.
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|