Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Timer implementieren

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
25.06.2004, 15:41 Uhr
~John
Gast


Hallo,
wie kann ich einen Timer implementieren.
Bei einer Dialoganwendung sind 3 Schritte notwendig:
1. afx_msg void OnTimer(UINT nTimerID); //in der header
2. void Test_Class::OnTimer(UINT nTimerID)//in der cpp
{
;
}
3. ON_WM_TIMER () //in der MessageMap

Mein Problem: Ich habe gerade keine Dialoganwendung und kann deshalb
in die MessageMap auch keine Basisklasse(CDialog) eintragen:

C++:
BEGIN_MESSAGE_MAP(Test_Class, CDialog)
    //{{AFX_MSG_MAP(CMarsConnectorDlg)
    ON_WM_TIMER ()
    //}}AFX_MSG_MAP
END_MESSAGE_MAP()


Meine Klasse ist auch von keiner abgeleitet !

Wie muss ich hier vorgehen ?

Gruß, John
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
25.06.2004, 16:07 Uhr
0xdeadbeef
Gott
(Operator)


Das hat nichts mit ANSI-C++ zu tun, also:
-->
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
25.06.2004, 16:46 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Windows-Timer funktionieren nur mit Dialogen, (falls mich einer vom gegenteil überzeugen kann, kann er das ruhig tun)
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
25.06.2004, 17:41 Uhr
Tommix



Das versuch ich doch glatt mal.
Man kann Timer auch mit anderen Fenstern einsetzen. Allerdings nur mit Fenstern, sonst kann die WM_TIMER Message ja nirgendwohin gesendet werden (das OS heißt nicht ohne Grund so).
Also -> Klasse von CWnd ableiten.

- Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
25.06.2004, 17:58 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


jo so hatte ich das gemeint mit "Dialog"
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
25.06.2004, 18:24 Uhr
~John
Gast


d.h. ich habe keine andere Möglichkeit sowas wie einen Timer zu bauen, wenn
ich keinen Dialog habe ?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
25.06.2004, 21:37 Uhr
ao

(Operator)



Zitat:
FloSoft postete
Windows-Timer funktionieren nur mit Dialogen, (falls mich einer vom gegenteil überzeugen kann, kann er das ruhig tun)


Aber gerne doch. Lies nach, was in der MSDN-Hilfe unter "SetTimer" steht, und zwar der Eintrag im Platform SDK. Da steht, dass das Window-Handle auch NULL sein kann.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
25.06.2004, 22:39 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Ja aber dann muss man eine Timer-Funktion angeben... Ich meinte mit meiner Aussage das keine WM_TIMER-Nachricht geschickt werden kann falls kein Dialog/Fenster vorliegt ...
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
26.06.2004, 08:45 Uhr
Tommix



Na so was. Das steht aber:

Zitat:

When you specify a TimerProc callback function, the default window procedure calls the callback function when it processes WM_TIMER. Therefore, you need to dispatch messages in the calling thread, even when you use TimerProc instead of processing WM_TIMER.


Das muss ich doch glatt mal ausprobieren.

- Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
26.06.2004, 20:01 Uhr
~John
Gast


... komm damit leider nicht ganz klar!
Kann mir da mal bitte jemand ein kleines Beispiel (oder Link) geben wie ich einen Timer (ohne Dialog) implementieren kann.

Danke, John
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: