Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2018, 17:44   #1
My_Number245
Пользователь
 
Регистрация: 07.06.2016
Сообщений: 19
По умолчанию Не загружается UPDOWN_CLASS из ресурсов

Здравствуйте. Проблема такая: описал в диалоге элемент управления up-down. Когда пытаюсь загрузить диалог из ресурсов, окно не открывается. Причем, когда в ресурсах закомментирую строку с UPDOWN_CLASS'ом, то все ок. Потом прописал в WinMain InitCommonControls(), линковщик выдал ошибку. Загуглил, узнал, что к проекту нужно подключать библиотеку comctl32. Долго возился, с горем пополам настроил. Итого: линковщик больше не ругается, а толку 0, как будто и не прописывал InitCommonControls. Что я делаю не так?

main.cpp:

Код:
#pragma comment(lib, "comctl32.lib")
#include<windows.h>
#include<commctrl.h>
BOOL CALLBACK DlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp);
HINSTANCE hInst;
int WINAPI WinMain(HINSTANCE h, HINSTANCE hPrev, LPSTR cmd, int ss)
{
   hInst = h;
   InitCommonControls();
   HWND wnd = CreateDialog(hInst, "MyDialog", NULL, (DLGPROC)DlgProc);
   if(!wnd)
      MessageBox(NULL, "Не работает", "Падла", MB_ICONWARNING | MB_OK);
   MSG msg;
   while(GetMessage(&msg, NULL, 0, 0))
   {
      TranslateMessage(&msg);
      DispatchMessage(&msg);
   }
   return msg.wParam;
}
BOOL CALLBACK DlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
{
   switch(msg)
   {
      case WM_INITDIALOG: 
         return TRUE;
      case WM_CLOSE:
         PostQuitMessage(0);
         return TRUE;
   }
   return FALSE;
}
hell.rc:

Код:
#pragma comment(lib, "comctl32.lib")
#include<windows.h>
#include<commctrl.h>
MyDialog DIALOG 50, 50, 400,200
   STYLE WS_VISIBLE | WS_SYSMENU | WS_BORDER
   CAPTION "Hellworld"
{
   CONTROL "5", 1, "EDIT", WS_BORDER | WS_VISIBLE | ES_CENTER, 10, 10, 20, 10 
   CONTROL "", 2, "UPDOWN_CLASS", WS_VISIBLE, 20, 20, 20, 10
}
My_Number245 вне форума Ответить с цитированием
Старый 13.05.2018, 22:30   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от My_Number245 Посмотреть сообщение
Потом прописал в WinMain InitCommonControl
Попробуйте InitCommonControlEx()
waleri вне форума Ответить с цитированием
Старый 14.05.2018, 14:21   #3
My_Number245
Пользователь
 
Регистрация: 07.06.2016
Сообщений: 19
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
Попробуйте InitCommonControlEx()
Тоже не работает
My_Number245 вне форума Ответить с цитированием
Старый 14.05.2018, 16:32   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от My_Number245 Посмотреть сообщение
CONTROL "", 2, "UPDOWN_CLASS", WS_VISIBLE, 20, 20, 20, 10
А, вот оно - нет такого класса UPDOWN_CLASS - уберите кавычки и подключайте commctrl.h в ресурсный файл.
Настоящее имя класса - "msctls_updown32"
waleri вне форума Ответить с цитированием
Старый 14.05.2018, 20:28   #5
My_Number245
Пользователь
 
Регистрация: 07.06.2016
Сообщений: 19
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
А, вот оно - нет такого класса UPDOWN_CLASS - уберите кавычки и подключайте commctrl.h в ресурсный файл.
Настоящее имя класса - "msctls_updown32"
Спасибо большое, работает как надо. Уже второй раз выручаете
А так я и не догадался бы, в самоучителе указано имя класса именно UPDOWN_CLASS, а в гугле по нему мало информации
My_Number245 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
комп не загружается Андрей 76 Свободное общение 4 02.05.2012 10:03
Не загружается ОС raiska Операционные системы общие вопросы 4 17.04.2012 23:07
Не загружается XP! ПОМОГИТЕ!!! Softsergey Свободное общение 10 25.11.2009 20:37
Не загружается windows xp haooss Windows 5 14.11.2009 23:26
ОС не загружается. SKS Компьютерное железо 20 27.06.2009 16:58