powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Перересовка окна
2 сообщений из 2, страница 1 из 1
Перересовка окна
    #33960318
Erael
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите ПЛЗ... что то я не понимаю почему не работает...

При изменении OnBtn1 не происходит изменения рисунка... :(
Как быть??? Что сдлать что бы менялось???

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
case WM_PAINT:
		hdc = BeginPaint(hWnd, &ps);
		// TODO: Add any drawing code here...
		hdcBits=::CreateCompatibleDC(hdc);
		SelectObject(hdcBits, maskBitmap);
		BitBlt(hdc,  0 ,  0 ,  200 ,  200 , hdcBits,  0 ,  0 , SRCCOPY);
		DeleteDC(hdcBits);

		hdcBitsBtn1=::CreateCompatibleDC(hdc);
		if(OnBtn1 == true)
			SelectObject(hdcBitsBtn1, Btn2Bitmap);
		else
			SelectObject(hdcBitsBtn1, Btn1Bitmap);
		BitBlt(hdc,  100 ,  100 ,  140 ,  131 , hdcBitsBtn1,  0 ,  0 , SRCCOPY);
		DeleteDC(hdcBitsBtn1);

		EndPaint(hWnd, &ps);
		break;
...
Рейтинг: 0 / 0
Перересовка окна
    #33960392
lite_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Насколько я понял winapi...

Если приведённый листинг находится в функции WndProc,
то попробуйте переделать цикл обработки сообщений
примерно так...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
	while(msg.message!=WM_QUIT)
	{
		if(PeekMessage(&msg, NULL, 0U, 0U, PM_REMOVE))
		{
			TranslateMessage(&msg);
			DispatchMessage(&msg);
		}else
			RenderScene();
	}

а вместо RenderScene() вашу функцию, которая изменяет рисунок...
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Перересовка окна
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]