|
Pardon my English ignorance..
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
Was considering that but I had quantities like 123.456:78 as well. So I thought that it would have to have "." but no ":" to be a float. Christians given me a good snippet and I'm going to doctor it up to handle my weird "numbers"...
Appreciate your help,
ns
|
|
|
|
|
As is often said, if you expressed what you want in plain english, it would be obvious to you.
bool IsFloat( LPCTSTR pszText )
{
ASSERT_VALID_STRING( pszText );
const int nLen = lstrlen( pszText );
int nDots = 0;
for( int i = 0; i < nLen ); i++ )
{
if (pszText[i] == '.')
++ nDots;
else if( !_istdigit( pszText[ i ] ))
return false;
}
return (nDots < 2);
}
That will return true for int and float, make it return (nDots == 1) to be true for float only.
Note, I did this in CP, it is untested, but the idea is sound.
Christian
No offense, but I don't really want to encourage the creation of another VB developer. - Larry Antram 22 Oct 2002
Hey, at least Logo had, at it's inception, a mechanical turtle. VB has always lacked even that... - Shog9 04-09-2002
During last 10 years, with invention of VB and similar programming environments, every ill-educated moron became able to develop software. - Alex E. - 12-Sept-2002
|
|
|
|
|
I really wouldnt have stumbled on it in a million years..... . Many thanks!
Appreciate your help,
ns
|
|
|
|
|
Gosh! Works like magic! Did what I was trying to like a charm! Really made me think, and appreciate the cool technique...
Thanks!
ns
|
|
|
|
|
CMyView::OnChar(...)
{
PostThreadMessage(id,msg,0,0);
}
when i type with less than 130ms time intervals between keystrokes a deadlock results in the app's main thread.Any help would be greatly appreciated.
|
|
|
|
|
Are you accessing MFC window classes from the thread's message loop?
MFC Window classes + threading = recipe for disaster.
You are better off doing all your window message handling in the main app thread and delegating any time-consuming work to worker threads to make the application respond better.
I have had my share of problems trying to update MFC frame windows and views from threads. I later used userdefined messages to the window for all my events from the thread, so that all GUI functions like updating views etc were done in the main thread.
modified 29-Aug-18 21:01pm.
|
|
|
|
|
Sorry to bother you guys with beginner questions, but I need help with the ListView control. I am creating an about dialog box and want to list all of the files installed (like Outlook Express). I have had a little success with it, but I am having trouble getting items to appear in the second or third column. The items only show up on the first column. How do I tell the program to place the text in specific columns (I am using MFC)?
-- Steve
|
|
|
|
|
On CP there is a CSortListCtrl which simplifies this task ten fold and it allows you to click on the header columns to sort ascending or descending...
Check it out...
I'm not totally familiar with CListCtrl , but I reckon you probably get items in the second, thrid columns by specifiying that the main items has child sub-items....
Cheers!
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
LVITEM lvi;
//fist item
lvi.mask = LVIF_TEXT;
lvi.iItem = 0; // First column
lvi.iSubItem = 0; // Frist item
lvi.pszText = (LPTSTR)(LPCSTR)("Item 1");
// Now insert the item
m_myList.InsertItem(&lvi);
// Now set the text for the 2nd, 3rd ,4th items they will go in row 0 "which is the first row"
m_myList.SetItemText(0,1,"Item 2");
m_myList.SetItemText(0,2,"Item 3");
m_myList.SetItemText(0,3,"Item 4");
|
|
|
|
|
Thanks a lot. That solved my problem. I just converted from Win32 programming, and ListView is a little different. For instance, the variable LVITEM is LV_ITEM in Win32. Thanks for helping me solve my problem.
-- Steve
|
|
|
|
|
can anyway recommend any mp3 encoders/decoders C/C++ libraries (must be minimum 128KBps quality) in order to stream LIVE audio over a network? I'm trying to create an application which will be like a video conferencing app but audio only.it will allow a minimum of 3 musicians to hear the other musicians playing live and also record the session.
cheers
|
|
|
|
|
MS DirectShow (part of DirectX) could provide both the application logic, and the necessary codec stuff. For instance, you have an input filter with an associated moniker to receive a stream from the network. More info in the SDK.
How low can you go ? (MS rant)
|
|
|
|
|
I cant check it out right now, but what will atoi(123.567) return? I'm hoping its 123...?
Appreciate your help,
ns
|
|
|
|
|
I'd imagine you want to do this:
floor(atof("123.567"));
Christian
No offense, but I don't really want to encourage the creation of another VB developer. - Larry Antram 22 Oct 2002
Hey, at least Logo had, at it's inception, a mechanical turtle. VB has always lacked even that... - Shog9 04-09-2002
During last 10 years, with invention of VB and similar programming environments, every ill-educated moron became able to develop software. - Alex E. - 12-Sept-2002
|
|
|
|
|
I think atoi is short for atom to interger...so you'll probably get a compiler error...
atoi("123.567"); would probably work better...
it's 123...
Cheers!
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
ascii to integer, I think is the proper long name for it
"The greatest danger to humanity is humanity without an open mind." - Ian Mariano
http://www.ian-space.com/
|
|
|
|
|
Thats works for me...
I tought myself that little abbreviation when I first started programming in windows and now I always associate a with atom...but ascii fits MUCH better...
Thank you...
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
Aren't you want to do _itoa(123.567) or something like that?
LPCTSTR Dutch = TEXT("Double Dutch ");
|
|
|
|
|
I am using XML DOM in VC++ to parse an XML document .A person could load a malicious File which isnt Well Formatted (preccursor for XML). How do I safeguard against this ?
As for eg someone could unknowingly load a file with Element tag attributes seperated by commas , which isnt allowed .
How do I safeguard against this ? I am looking for something that will do the task
isWellFormed() !!!!
Please help .
|
|
|
|
|
load the XML into the DOM in a try/catch block.
Christian
No offense, but I don't really want to encourage the creation of another VB developer. - Larry Antram 22 Oct 2002
Hey, at least Logo had, at it's inception, a mechanical turtle. VB has always lacked even that... - Shog9 04-09-2002
During last 10 years, with invention of VB and similar programming environments, every ill-educated moron became able to develop software. - Alex E. - 12-Sept-2002
|
|
|
|
|
Hi,
I'm creating a simple Win32 App (No MFC).
ProgramList = CreateWindow("LISTBOX", "BLAH", WS_VISIBLE|WS_CHILD | LBS_STANDARD | LBS_NOTIFY ,10, 10, 250, 400, hwnd, (HMENU)10, GetModuleHandle(NULL), NULL);
SendMessage(ProgramList,LB_ADDSTRING,0,(LPARAM)(LPTSTR)"test 1");
SendMessage(ProgramList,LB_ADDSTRING,0,(LPARAM)(LPTSTR)"test 2");
SendMessage(ProgramList,LB_ADDSTRING,0,(LPARAM)(LPTSTR)"test 2");
This creates my Listbox and three strings.
Now, how do I change the text and background color in the listbox?
I tried this: SetTextColor(GetDC(ProgramList), RGB(132, 123, 213));,
But nothing happens. I tried adding LBS_OWNERDRAWFIXED to the CreateWindow function of the listbox. But then the listbox just turns white, no text nothing.
What am I doing wrong?
Thanks for any help.
|
|
|
|
|
Read up on the WM_CTLCOLORLISTBOX message...it should let you do all you need...
Cheers!
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
I checked it on MSDN, but didnt find anything usefull, do you know the exact page you where talking about?
|
|
|
|
|
The message description...it explains exactly what it's for...
Check MSDN again but look under MFC instead it explains exactly how it works
CWnd::OnCtlColor()
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|