С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Std::function<>::target() возвращает 0 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что можно выбрать в Visual Studio чтобы написать типа игрового движка или ядра на c++ но не Win32 и с DirectX? http://www.cyberforum.ru/cpp/thread1230551.html
для современных Windows. другое не рассматривается Вот допустим решил написать движок для видеоигры на c++ для этого нужны несколько человек и лет но это не важно. именно для наших винд т.е. с...
C++ Состояние видео: играет или нет? Подскажите, пожалуйста, альтернативу этому: if(player.playState = WMPLib.WMPPlayState.wmppsPlaying) { //какой-то код }на С++? http://www.cyberforum.ru/cpp/thread1230350.html
C++ Чтение и поиск с PDF
Всем привет! Нужно реализовать чтение и поиск из PDF. (PDF парсинг :D) Кто знает, как можно реализовать? Нашел podofo в гугле, с установкой беда. Заранее Спасибо
C++ ПО для синхронной замены текста на сайте и в SharePoint
Народ, привет! Даже не знаю, куда именно запостить свой вопрос. Если можно что-то такое сделать на С++ - то будет неплохо. Суть такова: Необходимо найти какое-то программное решение для...
C++ Программа сохраняющая пароли WIFI http://www.cyberforum.ru/cpp/thread1226267.html
Приветствую форумчане, нужна программа сохраняющая в фоновом режиме пароли wifi сетей, готов зчаплатить за разработку данного ПО. Программа должна быть типа WirelessKeyView, но со следующими...
C++ Создать массив изображений Всем привет. Мне нужно, используя библиотеку opencv, создать массив изображений. Суть такова: есть фотография с людьми. Программа находит лица и помещает их в массив изображений и потом выводит... подробнее

Показать сообщение отдельно
StailGot
28 / 23 / 6
Регистрация: 25.08.2013
Сообщений: 41
20.07.2014, 00:43
DrOffset, DialogBoxIndirect - это макрос для DialogBoxIndirectParam (и это тоже макрос), где последним передается пользовательский параметр, LPARAM dwInitParam, в который передается при первом же вызове callbac'a, событие WM_INITDIALOG. Тут же он просто равен нулю. Так что да, если передать указатель (this), преобразовав его в LPARAM и потом обратно привести к классу, то должно получится. Тут кстати лямбда и пригодится.

Добавлено через 12 минут
Пример передачи строки, с классом примерно тоже самое:

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  std::string str = "Outer string";
 
  DLGPROC 
    callback =
    [] ( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam )->INT_PTR
  {
    if (uMsg == WM_INITDIALOG)
      std::cout << uMsg<< " "<< (*((std::string*)lParam)) << std::endl;
 
    if ( uMsg == WM_CLOSE )
      return EndDialog( hwndDlg, 0 );
    return false;
  };
 
  INT_PTR err = DialogBoxIndirectParamA( NULL, (LPCDLGTEMPLATE)hDialogTemplate, NULL, callback, (LPARAM)&str );
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.