Вниз
Скачать: CL | DM;

перерисовка окна   Найти похожие ветки 

← →
Creative   (2006-04-25 14:32) [0]

есть код

function WndProc(hwnd, message: DWORD; wParam, lParam: Integer): Integer; stdcall;
var
Up: boolean;
PS: TPaintstruct;
DC: HDC;
begin
dc := GetDC (hwnd);
case message of
WM_CREATE :
     begin
       Hwnd_main:= hwnd;
     end;
WM_PAINT:
     begin
       if Up = true then
       begin
         DC:= BeginPaint(hwnd_main, ps);
         { Рисовать неважно что - 1 }
         EndPaint(hwnd_main, ps);
       end;
       if Up = false then
       begin
         DC:= BeginPaint(hwnd_main, ps);
         { Рисовать неважно что - 2 }
         EndPaint(hwnd_main, ps);
       end;

WM_LBUTTONDOWN:
  begin
    If Up = true then
       Up:= false;
    invalidateRect(hwnd_main,nil, false);  
    If Up = false then
       Up:= true;
    invalidateRect(hwnd_main,nil, false);
  end;
end;

Проблема:
1. Строки о присвоении нового значения Up программа игнорирует.
2. Как следствие никакой перерисовки не происходит.

Укажите пожалуйста, что неправильно?


← →
Eraser ©   (2006-04-25 14:42) [1]


> Creative   (25.04.06 14:32)

А объявить Up как глобальную переменную не пробовал? :-)


← →
MBo ©   (2006-04-25 14:42) [2]

dc := GetDC (hwnd); - Это - выкинуть

Hwnd_main:= hwnd; - это тоже

WM_PAINT:
    begin
        DC:= BeginPaint(hwnd, ps);
          if Up then
            { Рисовать неважно что - 1 }
         else
            { Рисовать неважно что - 2 }
        EndPaint(hwnd, ps);
      end;

WM_LBUTTONDOWN:
 begin
    Up :=  not Up;
    invalidateRect(hwnd,nil, false);  
 end;
end;


← →
MBo ©   (2006-04-25 14:47) [3]

>Eraser ©   (25.04.06 14:42) [1]

А я слона и не приметил за кучей ненужного  :-)


← →
Creative   (2006-04-25 14:51) [4]

> Eraser ©   (25.04.06 14:42) [1]
> А объявить Up как глобальную переменную не пробовал? :-)

Попробовала :-)

To Eraser, MBo

Спасиобо огромное, все получилось.
Красота в простоте :-)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.03 c
15-1153951037
SergProger
2006-07-27 01:57
2006.08.20
E-mail и PHP


4-1145866945
EarlVadim
2006-04-24 12:22
2006.08.20
Постоянное разбухание памяти, занимаемой программой


15-1153073622
NAS
2006-07-16 22:13
2006.08.20
Оплачу програмку


15-1153500115
Rgv54
2006-07-21 20:41
2006.08.20
Проблема с WordXP


9-1133198066
Зм1й
2005-11-28 20:14
2006.08.20
Вопрос по 3DS Max




   Наверх