HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Visual Styles для своих контролов
  #1  
Старый 25.10.2007, 19:11
razzzar
Участник форума
Регистрация: 16.06.2007
Сообщений: 107
С нами: 9948928

Репутация: 208
Question Visual Styles для своих контролов

вообщем проблема такова. создаю кнопку через АПИ:
Код:
hFileWnd = CreateWindow("button", "qwe", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 10, 10, 75, 20, hWnd, NULL, hInstance, NULL);
но выглядит эта кнопка как в вин95. мне нужно чтобы она выглядела "по-современному", используя хршные стили.
знаю что надо сделать манифест, но сколько раз я его не делал, ничего не получалось
кто может помочь решить проблему?

Последний раз редактировалось razzzar; 25.10.2007 в 22:47..
 
Ответить с цитированием

  #2  
Старый 25.10.2007, 21:54
hidden
Постоянный
Регистрация: 23.04.2006
Сообщений: 622
С нами: 10552646

Репутация: 1292


По умолчанию

Есть такой файл: C:\WINDOWS\system32\logonui.exe.manifest
Скопируй его к себе, в рабочую папку и переименуй в соответствии со своим exe'шником, когда убедишься что работает, можешь подкорректировать внутренности и прикрепить к ресурсам.
 
Ответить с цитированием

  #3  
Старый 25.10.2007, 22:46
razzzar
Участник форума
Регистрация: 16.06.2007
Сообщений: 107
С нами: 9948928

Репутация: 208
По умолчанию

ок, спс, запахало. только странно, почему раньше не работало. теперь есть еще 2 вопроса:
1. после добавления манифеста, кнопка выглядит как и надо в хр, только вокруг нее белая рамка некрасивая(фон окна синий). как ее убрать?
2. можно ли обойтись как-то без манифеста?
 
Ответить с цитированием

  #4  
Старый 26.10.2007, 00:23
hidden
Постоянный
Регистрация: 23.04.2006
Сообщений: 622
С нами: 10552646

Репутация: 1292


По умолчанию

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

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

А вообще, есть апи для использования этих стилей, но тогда твоя программа будет работать только под XP

Код:
UxTheme.dll CloseThemeData DrawThemeBackground DrawThemeBackgroundEx DrawThemeEdge DrawThemeIcon DrawThemePar
entBackground DrawThemeText EnableThemeDialogTexture EnableTheming GetCurrentThemeName GetThemeAppProperties GetThemeBac
kgroundContentRect GetThemeBackgroundExtent GetThemeBackgroundRegion GetThemeBool GetThemeColor GetThemeDocumentationPro
perty GetThemeEnumValue GetThemeFilename GetThemeFont GetThemeInt GetThemeIntList GetThemeMargins GetThemeMetric GetThem
ePartSize GetThemePosition GetThemePropertyOrigin GetThemeRect GetThemeString GetThemeSysBool GetThemeSysColor GetThemeS
ysColorBrush GetThemeSysFont GetThemeSysInt GetThemeSysSize GetThemeSysString GetThemeTextExtent GetThemeTextMetrics Get
WindowTheme HitTestThemeBackground IsAppThemed IsThemeActive IsThemeBackgroundPartiallyTransparent IsThemeDialogTextureE
nabled IsThemePartDefined OpenThemeData SetThemeAppProperties SetWindowTheme
PS Хотел дать ссылку на MSDN, но эти ***** поудаляли страницы связанные со стилями XP, наверное из-за этой ****** висты....
 
Ответить с цитированием

  #5  
Старый 26.10.2007, 03:38
grinay
IQ- 137%
Регистрация: 15.06.2004
Сообщений: 441
С нами: 11527586

Репутация: 662
По умолчанию

Нак те вообще эти стили-чем тебе стандартный не страивает?Или юзай свой.А то понаделают программ вод определенную программ.Я например поклоник исключительно(если брать виндовз) только win2k а щас наплодили всякого говна под win xp именно.Короче бред.Как в си++ это выглядит не подскажу но апи функции подскажу-только придеться рисовать-много рисовать для красивого интерфейса.
__________________

 
Ответить с цитированием

  #6  
Старый 26.10.2007, 09:06
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
С нами: 10721066

Репутация: 4360


По умолчанию

Цитата:
2. можно ли обойтись как-то без манифеста?
Afair, нет.
 
Ответить с цитированием

  #7  
Старый 26.10.2007, 16:12
razzzar
Участник форума
Регистрация: 16.06.2007
Сообщений: 107
С нами: 9948928

Репутация: 208
По умолчанию

ок, всем спасибо )
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание сети: обжимка проводов petrovich-lamer Windows 13 02.07.2007 13:18



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.