Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.07.17;
Скачать: [xml.tar.bz2];

Вниз

Проблема с перерисовкой окна в WinXP   Найти похожие ветки 

 
Executor   (2003-05-12 14:14) [0]

Не перерисовывает почемуто окно в ХП, в других Виндах всё ОК... В чём проблема? Может я гдето не так написал? Или для ХП гдето надо ещё чтото добавлять?

rproblem.dpr

program RProblem;

uses
Windows, Messages;

const
AName = "RProblem";

var
Window: HWND;
Message: TMsg;
WindowClass: TWndClass;

function WindowProc(Window: HWND; Message, WParam: Word; LParam: LongInt): LongInt; stdcall;
begin
Result:=0;
case Message of
wm_Destroy:
begin
PostQuitMessage (0);
Exit;
end;
end;
Result:=DefWindowProc(Window, Message, WParam, LParam);
end;

begin
with WindowClass do
begin
Style:=cs_HRedraw or cs_VRedraw;
lpfnWndProc:=@WindowProc;
cbClsExtra:=0;
cbWndExtra:=0;
hInstance:=0;
hIcon:=LoadIcon(0, idi_Application);
hCursor:=LoadCursor(0, idc_Arrow);
hbrBackground:=GetStockObject(White_Brush);
lpszMenuName:="";
lpszClassName:=AName;
end;
If RegisterClass(WindowClass)=0 then Halt(255);
Window:=CreateWindow(AName, "Repaint Problem", ws_OverlappedWindow, cw_UseDefault, cw_UseDefault, cw_UseDefault, cw_UseDefault, 0, 0, hInstance, nil);
ShowWindow(Window, CmdShow);
UpdateWindow(Window);
while GetMessage(Message, 0, 0, 0) do
begin
TranslateMessage(Message);
DispatchMessage(Message);
end;
Halt(Message.wParam);
end.


 
VMcL   (2003-05-12 14:26) [1]

Если мне не изменяет склероз, не мешало бы обрабатывать сообщения
WM_ERASEBACKGROUND и WM_PAINT. Может XP в DefWindowProc сама их не обрабатывает?


 
Вася Пупкин   (2003-05-12 14:37) [2]

WParam: Word; => WParam:LongInt;


 
Nick Denry   (2003-05-13 12:51) [3]

или хотя бы wm_paint:
beginpaint(........);
............
endpaint(..........);


 
Executor   (2003-05-14 11:04) [4]

Вася Пупкин, спасибо... Просто сей текст из книжки одной, вот я вроде посмотрел всё нормально написано, а вот это не заметил... Всё теперь работает... Большое спасибо!



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

Форум: "WinAPI";
Текущий архив: 2003.07.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
4-55909
fishca
2003-05-06 17:33
2003.07.17
OLE Automation & Win32API


4-55897
Renegate
2003-05-16 11:38
2003.07.17
Получение списка активных процессов в Win9x/Me


1-55536
dima_matrix
2003-07-03 21:23
2003.07.17
VC модуль в проекте Delphi


14-55803
cyborg
2003-07-01 00:46
2003.07.17
Осторожно, идиотские инструкции!


6-55703
sfairat
2003-05-11 00:26
2003.07.17
http-server





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский