Idle



  • Hi,

    Kann mir einer erklären, wie nutze ich OnIdle: wo muss ich was deklarieren usw.
    Kleines Beispiel wäre nicht schlecht.



  • Die OnIdle-Funktion wird nicht einem Fenster, sondern der Applikation zugeordnet.
    Sie wird aufgerufen, wenn die Message-Queue leer ist, d. h. die Applikation hat nichts zu tun.
    Am besten benutzt man zum Einfügen ins Projekt den ClassWizard.
    Das Header-File sollte nach dem Einfügen etwa so aussehen:

    class CMyApp : public CWinApp
    {
    public:
       CMyApp();
    
    // Überladungen
       // Vom Klassenassistenten generierte Überladungen virtueller Funktionen
       //{{AFX_VIRTUAL(CMyApp)
       public:
       virtual BOOL InitInstance();
       virtual BOOL OnIdle(LONG lCount);
       //}}AFX_VIRTUAL
    
    // Implementierung
       //{{AFX_MSG(CMyApp)
       afx_msg void OnAppAbout();
       //}}AFX_MSG
       DECLARE_MESSAGE_MAP()
    };
    

    Im Source-File generiert der ClassWizard den Functionbody:

    BOOL CMyApp::OnIdle(LONG lCount) 
      {
            /* Hier Idle code einfügen */
       return CWinApp::OnIdle(lCount);
      }
    

Anmelden zum Antworten