Модераторы: feodorv, GremlinProg, xvr, Fixin

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Фон элементов управления 
V
    Опции темы
Kostik88
Дата 24.7.2008, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Здравствуйте! Сталкнулся с такой проблемой: закрашиваю клиентскую область окна белой кистью ( WHITE_BTUSH), на закрашиваемом окне имеются элементы управления(две кнопки и один чекбокс), так вот при закраске их фон не меняется(см. прикреплённый файл). Вопрос, какбы можно убрать этот фон не совпадающий с цветом фона окна?

Присоединённый файл ( Кол-во скачиваний: 41 )
Присоединённый файл  ___.JPG 3,46 Kb
PM MAIL   Вверх
SABROG
Дата 24.7.2008, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: нет
Всего: 91



Все элементы управления в программе - отдельные окна со своим фоном.


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
mes
Дата 24.7.2008, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



есть флаг по использованию родительского контекста, точно не помню как в винапи он будет 
типа (CS_) WS_PARENTDC

Это сообщение отредактировал(а) mes - 24.7.2008, 22:22


--------------------
PM MAIL WWW   Вверх
Kostik88
Дата 24.7.2008, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Цитата

Все элементы управления в программе - отдельные окна со своим фоном. 

Это я знаю, вовпрос не в том что все элементы это окна со своим фоном, а в том как этот самый фон изменить. smile 
PM MAIL   Вверх
mes
Дата 24.7.2008, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



Цитата(Kostik88 @  24.7.2008,  22:11 Найти цитируемый пост)

Это я знаю, вовпрос не в том что все элементы это окна со своим фоном, а в том как этот самый фон изменить.

флаг пробовал ставить? 


--------------------
PM MAIL WWW   Вверх
Dem_max
Дата 25.7.2008, 05:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



Юзай сообщения, и возвращяй нужный цвет.

      case WM_CTLCOLORBTN:
      case WM_CTLCOLORSTATIC:
      {
         SetBkMode((HDC)wParam,TRANSPARENT);
         return (LRESULT) GetSysColorBrush(COLOR_BTNFACE);
      }

Ноя так понял тебя интересует стиль как у винды  ?
то юзай такой код, после создания окна нужно этой функции передать HWND окна (диалога):

Код

//Гдето в заголовке
typedef HRESULT (WINAPI * ETDTProc) (HWND, DWORD);

// Сама функция
BOOL EnableDialogTheme(HWND hwnd)
{
    HMODULE hUXTheme;
    ETDTProc fnEnableThemeDialogTexture;

    hUXTheme = LoadLibrary(_T("uxtheme.dll"));

    if(hUXTheme)
    {
        fnEnableThemeDialogTexture = 
            (ETDTProc)GetProcAddress(hUXTheme, "EnableThemeDialogTexture");

        if(fnEnableThemeDialogTexture)
        {
            fnEnableThemeDialogTexture(hwnd, ETDT_ENABLETAB);

            FreeLibrary(hUXTheme);
            return TRUE;
        }
        else
        {
            FreeLibrary(hUXTheme);
            return FALSE;
        }
    }
    else
    {
        return FALSE;
    }
}



--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
mes
Дата 25.7.2008, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



Цитата(Dem_max @  25.7.2008,  05:17 Найти цитируемый пост)
Ноя так понял тебя интересует стиль как у винды  ?

так ведь в атаче на скриншоте уже установлен ХP-стиль ... smile 


--------------------
PM MAIL WWW   Вверх
Kostik88
Дата 25.7.2008, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Цитата

флаг пробовал ставить?  

Пробовал, но результат никакой.

Код

SetClassLong(hBottom,GCL_STYLE,GetClassLong(hBottom,GСL_STYLE) | CS_PARENTDC);

PM MAIL   Вверх
mes
Дата 25.7.2008, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



Цитата(Kostik88 @  25.7.2008,  14:30 Найти цитируемый пост)
Пробовал, но результат никакой.

тогда только как предложил Dem_max- надо перегрузить ответ на дочерний запрос родителю о атрибутах 


--------------------
PM MAIL WWW   Вверх
Kostik88
Дата 25.7.2008, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Dem_max, Вот к примеру я пишу обработку сообщения для чекбокса :

Цитата

case WM_CTLCOLORSTATIC: 
         SetBkMode((HDC)GetWindowDC(hChec),TRANSPARENT);
         return (LRESULT) GetSysColorBrush(COLOR_BTNFACE);   
      break;


Только цвет фона  чекбокса не меняется. 0о

Это сообщение отредактировал(а) Kostik88 - 25.7.2008, 17:46
PM MAIL   Вверх
Dem_max
Дата 25.7.2008, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



Цитата

так ведь в атаче на скриншоте уже установлен ХP-стиль

Нифига не установлен, ты к к ехе только присобачил манифест, 'nnjlftn возможность отображать контролы в стиле XP, а тему ХР можно задать только через EnableDialogTheme(HWND hwnd)


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
Kostik88
Дата 25.7.2008, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Цитата

Нифига не установлен, ты к к ехе только присобачил манифест, 'nnjlftn возможность отображать контролы в стиле XP, а тему ХР можно задать только через EnableDialogTheme(HWND hwnd) 



Чтобы убрать этот фон с элементов управления мне обязательно нужно ставить тему ХР чтоли?

А присобачил манифест Я, а не mes  smile 

Это сообщение отредактировал(а) Kostik88 - 25.7.2008, 18:13
PM MAIL   Вверх
Dem_max
Дата 26.7.2008, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



Цитата

Чтобы убрать этот фон с элементов управления мне обязательно нужно ставить тему ХР чтоли?


Не ты функцией активизируешь текущую тему. Текущей может быть стандартная или которая изменяет оформление рабочего стола, ты бы лучше сделал как говорят и не ...... нам мозг.


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
Kostik88
Дата 26.7.2008, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Dem_max, меньше всего мне хочется ......., такому как ты, мозг!

Это сообщение отредактировал(а) Kostik88 - 26.7.2008, 15:08
PM MAIL   Вверх
mekhanikus
Дата 27.7.2008, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вольноопределяющийся
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 16.6.2008
Где: Спасск-Дальний

Репутация: 1
Всего: 1



Цитата(Kostik88 @ 25.7.2008,  17:36)
Dem_max, Вот к примеру я пишу обработку сообщения для чекбокса :

Цитата

case WM_CTLCOLORSTATIC: 
         SetBkMode((HDC)GetWindowDC(hChec),TRANSPARENT);
         return (LRESULT) GetSysColorBrush(COLOR_BTNFACE);   
      break;


Только цвет фона  чекбокса не меняется. 0о

Попробуй сделать так:

Код


case WM_CTLCOLORSTATIC: 
         SetBkMode((HDC)GetWindowDC(hChec),TRANSPARENT);
         return GetSysColorBrush(COLOR_BTNFACE);   
      break;



Функция должна возвращать HBRUSH, а ты возвращаеш LRESULT.

Это сообщение отредактировал(а) mekhanikus - 27.7.2008, 14:47
PM MAIL   Вверх
Kostik88
Дата 28.7.2008, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



mekhanikus,  так всё правильно, обработчик события WM_CTLCOLORSTATIC возвращает значения BOOL - го типа и поэтому LRESULT, если ставить значение HBRUSH компилятор просто напросто будет ругаться.

Кому интересно про включение ХP те могут глянуть  сайтик, похожая проблема, такаяже ф-ция.... Но почемуто у меня она отказывается работать.

http://forum.sources.ru/index.php?showtopic=219977

Добавлено через 13 минут и 23 секунды
Просто будет выдаваться ошибка:

'return' : cannot convert from 'HBRUSH' to 'BOOL'

Это сообщение отредактировал(а) Kostik88 - 28.7.2008, 00:04
PM MAIL   Вверх
mes
Дата 28.7.2008, 00:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



Цитата(Kostik88 @  25.7.2008,  17:36 Найти цитируемый пост)
Вот к примеру я пишу обработку сообщения для чекбокса :
Код


case WM_CTLCOLORSTATIC: 
         SetBkMode((HDC)GetWindowDC(hChec),TRANSPARENT);
         return (LRESULT) GetSysColorBrush(COLOR_BTNFACE);   
      break;


Во первых где ты ловишь сообщение? у родителя ? приходит или нет?
Во вторых не кажется ли окончание static подозрительным? 
Чекбокс как никак кнопка. Мне кажется, что в данном случае надо использовать WM_CTLCOLORBTN  smile 





--------------------
PM MAIL WWW   Вверх
Kostik88
Дата 28.7.2008, 00:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Цитата

Чекбокс как никак кнопка. Мне кажется, что в данном случае надо использовать WM_CTLCOLORBTN  

Я тоже так думаю=) только не шипко помогло(

Цитата

Во первых где ты ловишь сообщение? у родителя ?


Сообщение ловлю у родителя.

Цитата

приходит или нет?



приходит.
PM MAIL   Вверх
Dem_max
Дата 28.7.2008, 06:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



Можно еще так

#include <uxtheme.h>
#pragma comment(lib, "UxTheme.lib")

SetWindowTheme(hwndList, L"Explorer", NULL);


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
Kostik88
Дата 28.7.2008, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Вроде бы решил проблему:

для бутонов:

Код

     case WM_CTLCOLORBTN:
{    
         
         return (LRESULT) GetStockObject(WHITE_BRUSH);  
          }


и для чекбокса:

Код

case WM_CTLCOLORSTATIC: 
          {    
                    
         return (LRESULT) GetStockObject(WHITE_BRUSH);  
          }



теперь фон кнопок и чекбоксов меняется.

Добавлено через 2 минуты и 54 секунды
А если хочется поставить любой другой фон то можно воспользоваться ф-цией CreateSolidBrush =)
PM MAIL   Вверх
mekhanikus
Дата 28.7.2008, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вольноопределяющийся
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 16.6.2008
Где: Спасск-Дальний

Репутация: 1
Всего: 1



Странно.
Читаем про WM_CTLCOLORSTATIC

Цитата

Return Value

If an application processes this message, the return value is a handle to a brush that the system uses to paint the background of the static control.


Тоже самое про WM_CTLCOLORBTN.

Кинь исходник, если не жалко, самый минимум, как ты кнопки делаешь и красишь.
Интересно самомы скомпилить.

PM MAIL   Вверх
Kostik88
Дата 28.7.2008, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



mekhanikus,  Я не совсем понял что тебя в этих сообщения не устраивает и в чём твое негодование относительно цитаты из msdn?
Код выкладывать не буду ибо там больше 3 тысяч строк кода. Хочешь проверить сделай простой проект прикрепи к нему диалог с помощью Resource View и кинь на него кнопочки и проверь эти сообщения.
PM MAIL   Вверх
Draeden
Дата 28.7.2008, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.7.2008

Репутация: нет
Всего: нет



Любопытная задачка: нужно поменять значения поля в WNDCLASS созданного ранее через RegisterWindowClass.
Интересно посмотреть, есть ли красивое решение...
PM MAIL   Вверх
mes
Дата 28.7.2008, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



Цитата(Draeden @  28.7.2008,  18:43 Найти цитируемый пост)
Любопытная задачка: нужно поменять значения поля в WNDCLASS созданного ранее через RegisterWindowClass.
Интересно посмотреть, есть ли красивое решение... 

если я правильно понял то Вам нужно SetClassLong

Добавлено через 1 минуту и 44 секунды
также непонятно почему вопрос поместили в этом топике.. в чем связь с темой ?? 


--------------------
PM MAIL WWW   Вверх
mekhanikus
Дата 29.7.2008, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вольноопределяющийся
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 16.6.2008
Где: Спасск-Дальний

Репутация: 1
Всего: 1



Цитата(Kostik88 @ 28.7.2008,  16:14)
в чём твое негодование относительно цитаты из msdn?


Никакого негодования, спокоен как удав.

Просто, у меня был опыт раскрашивания статиков.
При этом в DialogProc сообщения обрабатывались макросами HANDLE_MSG,
с последующим вызовом соответствующих функций.
Так вот функция раскраски статиков возвращала HBRUSH, и все работало.

Сейчас попробовал стелать тоже самое без HANDLE_MSG,
действительно, без (LRESULT) ругается. smile 
Оказывается в HANDLE_MSG сделано тоже самое - преобразование в LRESULT.
Век живи - век учись.  smile 

Кстати PUSHBUTTON у меня нехотят краситься никак.
PM MAIL   Вверх
Draeden
Дата 29.7.2008, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.7.2008

Репутация: нет
Всего: нет



Цитата(mes @ 28.7.2008,  23:26)
Цитата(Draeden @  28.7.2008,  18:43 Найти цитируемый пост)
Любопытная задачка: нужно поменять значения поля в WNDCLASS созданного ранее через RegisterWindowClass.
Интересно посмотреть, есть ли красивое решение... 

если я правильно понял то Вам нужно SetClassLong

Добавлено @ 23:28
также непонятно почему вопрос поместили в этом топике.. в чем связь с темой ?? 

Цитата(Draeden @  28.7.2008,  18:43 Найти цитируемый пост)
Любопытная задачка: нужно поменять значения поля в WNDCLASS созданного ранее через RegisterWindowClass.
Интересно посмотреть, есть ли красивое решение... 

если я правильно понял то Вам нужно SetClassLong

Добавлено @ 23:28
также непонятно почему вопрос поместили в этом топике.. в чем связь с темой ??

Это не мой вопрос. Автор темы хочет поменять цвет фона для определённого окна, а также для всех его дочерних окон. Цвет фона определяется полем в структуре WNDCLASS которая регистрируется функцией RegisterClass. Таким образом нужно

1. найти все дочерние окна
2. определить классы всех окон - родительского и дочерних ( этот класс возвращается функцией RegisterClass и указывается при вызове CreateWindow )
3. найти структуры WNDCLASS для найденных классов ( я не вижу документированного способа сделать это )
4. изменить соотвтесвующее поля в этой структуре ( кисть фона )
5. обновить родительское окно со всеми дочерними окнами

Проблема - п.3, всё остальное сделать просто.
PM MAIL   Вверх
Kostik88
Дата 29.7.2008, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Draeden,  если Вы не заметили то вопрос уже решён, кодом в несколько строк.
PM MAIL   Вверх
mes
Дата 29.7.2008, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



Цитата(Draeden @  29.7.2008,  13:57 Найти цитируемый пост)
3. найти структуры WNDCLASS для найденных классов ( я не вижу документированного способа сделать это )


Цитата(Draeden @  29.7.2008,  13:57 Найти цитируемый пост)
Это не мой вопрос. Автор темы хочет поменять цвет фона для определённого окна, а также для всех его дочерних окон. Цвет фона определяется полем в структуре WNDCLASS которая регистрируется функцией RegisterClass. Таким образом нужно

Цвет фона класса окон, а не отдельно взятого окна.  
Цитата(Draeden @  29.7.2008,  13:57 Найти цитируемый пост)
3. найти структуры WNDCLASS для найденных классов ( я не вижу документированного способа сделать это )

Цитата(mes @  28.7.2008,  23:26 Найти цитируемый пост)
... Вам нужно SetClassLong

http://msdn.microsoft.com/en-us/library/ms633588(VS.85).aspx



--------------------
PM MAIL WWW   Вверх
Draeden
Дата 29.7.2008, 16:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.7.2008

Репутация: нет
Всего: нет



И то верно, надо MSDN внимательнее читать smile
PM MAIL   Вверх
Dem_max
Дата 30.7.2008, 07:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



Kostik88
Цитата

теперь фон кнопок и чекбоксов меняется.
А если хочется поставить любой другой фон то можно воспользоваться ф-цией CreateSolidBrush =)


Ага а ты попробуй Оформление XP поставить на классический вид или оформление другое поставь из сторонних разработчиков и получишь гимморой, и тогда фон будет другим цветом и твои статики будут закрашиваться белым цветом, а подбирать через СreateSolidBrush  у тебя не получится.

А чтою этого небыло используется SetWindowTheme(hwndList, L"Explorer", NULL), которая сама автоматически раскрашивает контролы с установленной цветовой схемой в системе, при этом эта функция вызывается только для родительского окна или для диалога который создается на TabControl/


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
Kostik88
Дата 30.7.2008, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 9.5.2008

Репутация: нет
Всего: 2



Цитата

А чтою этого небыло используется SetWindowTheme(hwndList, L"Explorer", NULL), которая сама автоматически раскрашивает контролы с установленной цветовой схемой в системе, при этом эта функция вызывается только для родительского окна или для диалога который создается на TabControl/ 


Нихрена она не ставится! Говорил же уже!

Добавлено через 2 минуты и 47 секунд
Цитата

Ага а ты попробуй Оформление XP поставить на классический вид или оформление другое поставь из сторонних разработчиков и получишь гимморой, и тогда фон будет другим цветом и твои статики будут закрашиваться белым цветом, а подбирать через СreateSolidBrush  у тебя не получится.


пробовал и всё нормально никокого гимароя не вылезло! манифест тоже не просто так существует!

Добавлено через 8 минут и 20 секунд
И к томуже это для Лист контрола тема SetWindowTheme(hwndList, L"Explorer", NULL)
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.1246 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.