|
I dont know why you asked this question but see here[^] for event.
Of one Essence is the human race
thus has Creation put the base
One Limb impacted is sufficient
For all Others to feel the Mace
(Saadi )
|
|
|
|
|
As both Cédric and Hamid suggested, your question is not very clear what you mean regarding the concept of "events".
But in my opinion the only meaning of events where it makes sense to be compared to functions is in the sense of windows messages. If you mean something else you can stop reading here.
Windows is a so called "event-driven" operating system.
This means that every action will generate an event, which in windows is represented by a message.
If you wish to react on a certain action, you write a message handler for the message; e.g if you want to do something when the user double clicks the left button of the mouse, you write a message handler for the WM_LBUTTONDBLCLK message.
Regarding "functions" you must of course write functions and call them in order to do the things you want. But this also means that if you're spending a lot of time in a function call chain, the user will find the user interface inresponsive because you are not handling messages. To prevent this unpleasant user experience, it's common to use worker threads that run in the background performing lengthy operations.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote "High speed never compensates for wrong direction!" - unknown
|
|
|
|
|
Yes and no ... it mostly depend on the language and on the programming model.
The conceptual difference is that a "function" is something you call to get a work to be done for you.
An event is something you call to inform "someone who may listen" that it may have some work to do for itself.
Then, since everything has to work on a Von Neumann machine, events are "handled" by functions (but "aren't" themselves functions).
In more "real life": a function call is a capability you expose to me, that I can call: like me telling you "please do this calculation" (And Im'interested in the result).
An event is a capability I expose to let you able to do your job, like "please be informed that a mail has arrived".
I'm not directly interested in what you can do with it. Just know you wish to be informed about.
Just note how in both the example, the active subject (the one that "owns" the timing) is always "me". If you invert, than event and function also invert their role.
2 bugs found.
> recompile ...
65534 bugs found.
|
|
|
|
|
Hi all,
i m already using a Imagelist in Treectrl.
i want to use a back image for treectrl.
please tell me how can i do this.
thanks in advance.
IN A DAY, WHEN YOU DON'T COME ACROSS ANY PROBLEMS - YOU CAN BE SURE THAT YOU ARE TRAVELLING IN A WRONG PATH
|
|
|
|
|
|
"_$h@nky_" wrote: please tell me how can i do this.
I don't think there is a function to set back ground image for a tree control. How ever you can draw an image by deriving a class from CTreeCtrl and the draw the image by overriding the WM_ERASEBKGND message.
|
|
|
|
|
After decades of fun we now have to stop using MFC in the project.
How do I get this to work? I want a simple solution, because I have this about 1000 times in the code. I tried those answers which seemed obvious to me, but it does not compile.
const char CODE_N = 'N';
string SK::getCode() const // was CString
{
return CODE_N;
}
1>..\path\SK.cpp(1423) : error C2440: 'initializing' : cannot convert from 'const char' to 'std::basic_string<_Elem,_Traits,_Ax>'
-------------
Bibo ergo sum
|
|
|
|
|
|
Thankyou for your quick reply.
I realise I had hit on one of the few const char definitions which only has one character. Those with more than one worked fine the way it was.
-------------
Bibo ergo sum
|
|
|
|
|
I used the CWnd::GetClientRect function but it returns a rect with top=0,bottom=0,left=0,right=0,the dialog is not minimized why it happens
|
|
|
|
|
Are you sure you'd able to see the Window? From Which function you're calling this ? Have you declared any variables having same name in different scope and referring false one? Can you post the snippet?
-Sarath.
"Great hopes make everything great possible" - Benjamin Franklin
|
|
|
|
|
Did you use of GetLastError for get info about error?
Of one Essence is the human race
thus has Creation put the base
One Limb impacted is sufficient
For all Others to feel the Mace
(Saadi )
|
|
|
|
|
Hi All,
I want to make a application which can run on all three platform (MAC/Linux/Windows). i think it is possible if i code in core c/C++ only but problem is that how can i make a window using c/C++.
any suggestion would be greatfiull to me.
thanks
Bankey
|
|
|
|
|
bankey1010 wrote: i think it is possible if i code in core c/C++ only but problem is that how can i make a window using c/C++.
Depends what you mean by "it is possible" . You can't make the same executable run on different platform, because the format is different for each of the platform. However, if you stick to pure standard C++, then the only thing you will have to do is recompile your code for each of the platform using a different compiler.
But of course, you'll probably need more than just standard C++ and there are some cross-platform GUI libraries that exist which allow you to write cross-platform code. Look for instance at wxWidgets[^].
|
|
|
|
|
bankey1010 wrote: i think it is possible if i code in core c/C++ only but problem is that how can i make a window using c/C++
C/C++ is general purpose language. Even if you decide to do that with Pure C/C++, you will have to get support from Operating system.
What about trying QT?[^]
Cross-platform Development[^]
-Sarath.
"Great hopes make everything great possible" - Benjamin Franklin
|
|
|
|
|
|
simple is use Java
|
|
|
|
|
Hi,
My application is crashing with this Api for only one domain user and only on all Dell Optiplex 755 with Vista SP1 installed.Can I know what could be the reason.
Thanks.
|
|
|
|
|
Was it working fine before installing service pack? I think it should work fine from Windows 95-Windows Server 2008.
Can you post the snippet?
-Sarath.
"Great hopes make everything great possible" - Benjamin Franklin
|
|
|
|
|
Go to that users machine and open regedit.exe and navigate to the key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping
1.) Check that it exists
2.) Right click it and check that the user currently logged in has access permissions. Note that this is technically a small security risk as subkeys such as Win.ini can be used to load malware at startup.
I would recommend not using this GetPrivateProfileInt function[^]. It was created for compatibility with old Windows 3.1 software.
At any rate, I would suggest creating your own registry key and subkeys. Microsoft will not support this registry key forever, its time for you to move along.
Best Wishes,
-David Delaune
|
|
|
|
|
How do i get the icon/bitmap from CMenu and then draw it on
void CMyMenu::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
{
}
Currently i able to get the check mark with ODS_CHECKED
But i don't know how do i get the icon/bitmap from the original CMenu
Any help would be appriciated
Regards,
KH
good
modified on Friday, December 19, 2008 2:10 AM
|
|
|
|
|
You can call CMenu::GetMenuItemInfo[^] Please follow the link, it describes how to use the API
-Sarath.
"Great hopes make everything great possible" - Benjamin Franklin
|
|
|
|
|
Dear Friends,
Please could you give an idea about below question.
need difference between using static variable in 'C' and 'C++'.
Thanks,
Sakthi
Nice things do nice works
|
|
|
|
|
|
i m creating 3 queutimers and after adding them in queue using 3 callbacks functions for each timer ,and calling one function after 10ms 2nd func after 100 ms,3rd func after 1sec but its not working properly they functions are not executing at specefied intervals,to call them after a bit interval i hv to use sleep method . so plz tell me how to fix it the code is below
HMODULE hlib = LoadLibrary ("kernel32.dll");
CTQ CreateTimerQueue = (CTQ)GetProcAddress (hlib, "CreateTimerQueue");
CTQT CreateTimerQueueTimer = (CTQT)GetProcAddress (hlib, "CreateTimerQueueTimer");
HANDLE htimer=CreateTimerQueue();
HANDLE t,t2,t3,t4;
int arg = 10;
if(!CreateTimerQueueTimer( &t, htimer,TimerRoutine, &arg , 10, 1,4))
{
SetDlgItemText(IDC_S,"not set");
}
else
{
SetDlgItemText(IDC_S,"set");
}
CreateTimerQueueTimer( &t2, htimer,TimerRoutine2, NULL, 100, 1, 2);
CreateTimerQueueTimer( &t3, htimer,TimerRoutine3,NULL , 1000, 1, 2);
}
VOID CALLBACK TimerRoutine(PVOID lpParam, BOOLEAN TimerOrWaitFired)
{
one++;
char a[20];
itoa(one,a,10);
st1->SetWindowText(a);
}
VOID CALLBACK TimerRoutine2(PVOID lpParam, BOOLEAN TimerOrWaitFired)
{
two++;
char a[20];
itoa(two,a,10);
st2->SetWindowText(a);
}
VOID CALLBACK TimerRoutine3(PVOID lpParam, BOOLEAN TimerOrWaitFired)
{
three++;
char a[20];
itoa(three,a,10);
st3->SetWindowText(a);
}
|
|
|
|