Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI Windows has triggered a breakpoint in .exe https://www.cyberforum.ru/ win-api/ thread1420075.html
Столкнулся с такой ошибкой(скрин в вложениях) Код OPENFILENAME ofn; wchar_t nameFile = {0}; wchar_t szFile = {0}; ZeroMemory(&ofn, sizeof(ofn)); ofn.lStructSize = sizeof(ofn); ofn.hwndOwner = hDlg; ofn.lpstrFile = szFile; // ofn.lpstrFile = '\0';
C++ WinAPI Написать систему тестирования
Здравствуйте у меня такое задание Написать простую программу тест,особых требований нет, результаты тестирования должны хранится в векторе ,и каждый вопрос должен иметь несколько вариантов ответов.. Начну с самого простого вопроса : Я только начал заниматся этим заданием .Я правильно понимаю алгоритм ,в своем окне я создаю 3 радио кнопки(варианты ответов ) и кнопку по нажатию на которой...
C++ WinAPI Смена обоев рабочего стола программным способом https://www.cyberforum.ru/ win-api/ thread1419651.html
Необходимо программно сменить обои на рабочем столе. SystemParametersInfo() не позволяет изменять тип установки обоев (замостить, растянуть, по центру). Также, если знаете, то подскажите библиотеку которой Explorer конвертирует jpeg/gif/png в bmp.
C++ WinAPI [Win API] Отображение координаты курсора мыши и нажатой клавиши мыши в отдельном окне https://www.cyberforum.ru/ win-api/ thread1419615.html
Только начал изучать , решил сделать прогу для отображение координат мыши и нажатой клавиши мышки в отдельном окне. Подскажите пожалуйста, как можно это реализовать, с координатами проблем нет, проблема с Messagebox и выводом нажатой клавиши мышки. Если кому не трудно, можете написать как это сделать (пример кода). Вот мой код: #include "stdafx.h" #include "прога 1.h" #include <windows.h> ...
C++ WinAPI Неизвесное MyErrorExit
Что делать?? Код не компилется.. /*Чтение событий буфера вводимых данных -------------------------------------------------------------------------------- Функция ReadConsoleInput может быть использована для непосредственного обращения к буферу ввода консоли. Когда консоль создается, включается ввод информации от мыши, а ввод данных окна отключается. Чтобы гарантировать, что...
C++ WinAPI Поиск по файлам и их запись https://www.cyberforum.ru/ win-api/ thread1419413.html
Всем доброго времени суток. Пишу простенькую программу без пользовательского интерфейса. При запуске. Ищет файлы с расширением .html и записывает их в текстовый документ html.txt. Потом спускается на директорию ниже и ищет там. В принципе все просто. но на одном месте у меня ступор, сейчас покажу в каком. #include<iostream> #include<string.h> #include<stdio.h> #include<tchar.h>...
C++ WinAPI Графика в консоли с использованием WinAPI https://www.cyberforum.ru/ win-api/ thread1419387.html
Всем привет, я решил сделать консольную игру с довольно примитивной графикой и выбрал для этого библиотеку windows.h. Порывшись в интернете, понял, что информации на русском языке про эту библиотеку мало и поэтому пишу здесь, в надежде, что вы поможете мне. Вот что я смог найти POINT op; HWND hWnd = GetConsoleWindow(); //Получаем дескриптор окна консоли HDC hDC = GetDC(hWnd); //Получаем...
Как правильно постоянно менять курсор? C++ WinAPI
Сделал я свой контрол, сне нужно и ногда менять один курсор на другой, в за висимочти от координат миши, вопрос первый, возможно ли сменить курсор конкретно для окна, а не для его класса? я курсор менял так SetClassLongPtr(hWnd,GCLP_HCURSOR,(LONG_PTR)LoadCursorW(NULL, IDC_HAND )); естественно курсор менялся и для остальных окон которые пренадллежалли тому же классу, мб можно его менять как-то...
C++ WinAPI Как запустить проект exe при создаваемой dll Короче написал dll, при нажатии на F5 идет компеляция и попытка запуска dll но вылазит ош. ну понятно запустить ее нельзя а вот хотелось бы узнать где в настройках есть пункт типа указать запускаемый файл типа exe ну не как не могу найти. visual studio 2010. https://www.cyberforum.ru/ win-api/ thread1419152.html C++ WinAPI COM Port и WriteFile - Запись успешна в случае отсутствия 0 https://www.cyberforum.ru/ win-api/ thread1418857.html
И снова здравствуйте! Изучаю работу с COM портом, пример взял отсюда. Все вроде замечательно, открытие, чтение и запись, но! Запись успешна в случае отсутствия 0, то есть если отправляю в порт: 0x4B, 0x08, 0x01, 0x66, 0xF5, 0x7E То все правильно отправляется: 4B 08 01 66 F5 7Eи получаю ответ, но если отправить: 0x4B, 0x08, 0x01, 0x00, 0x66, 0xF5, 0x7E То в порт пишет: 4B 08 01 00 00 00 00...
C++ WinAPI API, Bluetooth, Broadcom SDK
Работаю в VC6++. Имеется Broadcom SDK, в мануале сказано: For convenience, a function has ben added to SDK named IsBroadcomStack(). This function returns TRUE if the application is running on the Bluetooth Software for Windows platform and returns FALSE if it is running on the Vista Profile Pack platform. Т.е. эта простая функция возвратит либо TRUE либо FALSE. Так вот никак не удается собрать...
C++ WinAPI Как загрузить картинку https://www.cyberforum.ru/ win-api/ thread1418489.html
183 / 181 / 66
Регистрация: 15.02.2015
Сообщений: 515
28.04.2015, 10:50 0

WM_CTLCOLORBTN - C++ WinAPI - Ответ 7541709

28.04.2015, 10:50. Показов 3599. Ответов 1
Метки (Все метки)

Ответ

Посылать ничего не нужно. Достаточно просто обработать WM_CTLCOLORBTN, как у вас это и написано. При чём для bushbutton достаточно просто вернуть кисть, для кнопок со статиком (radio и check) нужно ещё обрабатывать WM_CTLCOLORSTATIC и помимо возвращения кисти закрашивать клиентскую область (::FillRect((HDC)wparam, &rect, hbrush)) и отключить закрашивание фона текста (::SetBkMode((HDC)wparam, TRANSPARENT)). При использовании классической темы закрашивать клиентскую область необязательно. Однако, не советую использовать для закрашивания фона главного окна прозрачную кисть по типу (HBRUSH)GetStockObject(NULL_BRUSH).
Если нужно изменить цвет самой кнопки, то нужно использовать стиль BS_OWNERDRAW и перерисовывать кнопку в WM_DRAWITEM.

Добавлено через 10 минут
и ещё:
создайте static кисть в оконной процедуре и при закрытии окна нужно будет её освободить (DeleteObject(HBRUSH)), иначе не происходит освобождение ресурсов, а сообщение WM_CTLCOLOxx приходит далеко не один раз.

Вернуться к обсуждению:
WM_CTLCOLORBTN C++ WinAPI
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.04.2015, 10:50
Готовые ответы и решения:

Как в WM_CTLCOLORBTN поменять цвет текста у кнопки?
с WM_CTLCOLORSTATIC все понятно, а в WM_CTLCOLORBTN ничерта не работает. Спасибо.

1
28.04.2015, 10:50
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru