Ich verwende settimer, um den Timer zu starten. Ich möchte den Timer-Wert jedes Mal ändern, wenn der Timer abläuft. Der Code ist wie folgt:Der Wert des Settimers konnte nicht geändert werden.
#include<iostream>
#include <windows.h>
#include <stdio.h>
#include<WinUser.h>
#pragma comment(lib, "user32.lib")
void main()
{
int id = 1;
static bool isStart = false;
static long l = 10000;
while(1)
{
int n;
MSG msg = {0};
{
SetTimer(NULL, id,l,NULL);
while(GetMessage(&msg,NULL, 0,0))
{
// Post WM_TIMER messages to the hwndTimer procedure.
if (msg.message == WM_TIMER)
{
std::cout << "Timer expired";
KillTimer(NULL, id);
msg.message = 0x0;
l = 20000;
break;
}
}
}
}
}
Auch wenn ich den Wert auf 20000 sein nicht nehmen zu ändern, wird der Timer nur einmal eingestellt. Brauchen Sie Hilfe zu diesem Thema.
Dank
Ich denke, Ihre Nachrichten "msg" werden nicht an das Fenster gesendet. Warum sind nicht 'Dispatch (&msg);' im 'GetMessage' Schleife? Auch, was die Notwendigkeit von' # include ist 'wenn Sie' # include '? –
ubuntugod
habe ich Dispatch (&msg); noch seine Arbeit nicht – anonymous
wo hast du es hinzufügen? – ubuntugod