da bei mir die Button nicht neu gezeichnet werden wenn ich mit der maus drüberfahre
habe ich mich zu InvalidateRect entschlossen.
Delphi-Quellcode:
begin
ImgW := ImgW div cardinal(StateMax);
if IsWindowEnabled(WinHandle) then
begin
UseState := 1;
if (WinHandle = GetFocus) and (StateMax > 3) then
UseState := 4;
GetCursorPos(CurPos);
ScreenToClient(WinHandle, CurPos);
InvalidateRect(WinHandle, @rc, False);
UpdateWindow(WinHandle);
if PtInRect(rc, CurPos) then
if IsLButtonDown then
begin
if WinHandle = GetFocus() then
if (GetCursor = LoadCursor(0, IDC_ARROW)) and (StateMax > 1) then
UseState := 2;
end else
if StateMax > 4 then UseState := 5;
end else
if StateMax > 2 then UseState := 3;
end;
Jetzt funktioniert alles bestens aber mit gut 80-100% CPU
wenn ich mit der Maus innerhalb des Window bin.
Das kann es doch nicht sein oder ?
Hat vielleicht jemand eine lösung dafür ?
gruss Emil