Hi,
ich lasse ein Quadrat in einem Fenster zeichnen. Nun frage ich in der Nachrichtenschleife ab, ob die LinkeMausTaste gedrückt wurde.
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
case WM_LBUTTONDOWN:
{
smallrect s_rc;
RECT rc;
GetClientRect(hWnd,&rc);
HDC hDC = GetDC(hWnd);
POINTS points = MAKEPOINTS(lParam);
if(points.x > s_rc.s_rc_to_draw.left && points.x < s_rc.s_rc_to_draw.right && points.y > s_rc.s_rc_to_draw.bottom && points.y > s_rc.s_rc_to_draw.top)
{
FillRect(hDC,&rc,CreateSolidBrush(RGB(0,0,0)));
}
ReleaseDC(hWnd,hDC);
}break;
|
Die Koordinaten des Cursors werden mittels dem Makro MAKEPOINTS umgewandelt und mit den Angaben des Dreiecks (ist in einer Klasse, die ich in einer anderen Datei habe) verglichen.
Lasse ich das nun im Debug-Modus laufen und klicke irgendwo hin, kommt ein Fehler:
[list]Run-Time Check Failure #3 - The variable 's_rc' is being used without being defined.[/list] Er springt außerdem zu der if-Anweisung. Im Release-Modus passiert gar nichts!
Wo liegt meinh Fehler? Die Klasse stimmt eingentlich (glaub ich) und somit müsste s_rc ja definiert sein.
Hoffe auf Hinweise.
mfg spacegaier