Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > создание/управление диалогами из .res


Автор: Budy 21.11.2007, 12:17
:Приветствую
Ищу мануал по созданию шаблонов диалогов для Delphi. Так же интерисует как можно управлять объектами даилога, например, как получить/установить значение для COMBOBOX или поставить крыжик в CHECKBOX.

Вот пробовал разобраться со следующей программой:

Исходник диалога:
Код

MYDIALOG DIALOG 0, 0, 186, 95
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Dialog"
FONT 8, "MS Sans Serif"
BEGIN
   DEFPUSHBUTTON "OK", 1, 129, 7, 50, 14, 0, WS_EX_DLGMODALFRAME
   PUSHBUTTON "Cancel", 2, 129, 24, 50, 14, 0, WS_EX_DLGMODALFRAME
   COMBOBOX 3001,7,76,172,30,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP
END


Сама программа что показывает этот диалог:
Код

program DialogTest;

{$R dialogs.res}

uses
  Windows, Messages;

var
  Res: Integer;

function SettingsDlgProc(Window: HWND; Msg, WParam, LParam: Integer): Integer; stdcall;
var
  S: String;
begin
  Result:=0;
  case Msg of
    // Настраиваем объекты диалога //
    wm_InitDialog: begin
      // Как заполнить список элементов в COMBOBOX ? //
    end; // wm_IniDialog
    // Произошло некое событие //
    wm_Command: begin
      case LoWord(WParam) of
        1:  EndDialog(Window, idOK);              // Click OK
        2:  EndDialog(Window, idCancel);          // Click Cancel
      end;
    end; // wm_Command
    // Происходит закрытие диалога //
    wm_Close:
      DestroyWindow(Window);
    // Происходит удаление диалога //
    wm_Destroy:
      PostQuitMessage(0);
    // Во всех других случаях - нет ошибок //
    else Result:=0;
  end;
end;

begin
  // Запускаем диалог MYDIALOG //
  Res:=DialogBox(hInstance, 'MYDIALOG', 0, @SettingsDlgProc);
  // Как узнать значение в COMBOBOX ? //
  Halt(Res);
end.


Собственно, 
• Как заполнить список элементов в COMBOBOX ?
• Как узнать значение в COMBOBOX ?

p.s. Очень буду рад за хороший мануал, где описаны все подробности - параметры, возможные значения, и прочее

Автор: OdesitVadim 21.11.2007, 14:00
В www.msdn.com точно есть ответы на ваши вопросы.

Автор: Budy 21.11.2007, 15:56
OdesitVadim, мдаа... Что могу сказать точно, что 3 часа там ползал, ничего решающего мою проблему не нашел.
Есть конечно пример с проверкой/установкой крыжика в CHECKBOX, это уже вперед smile
А вот про COMBOBOX ничего.

Автор: navodri 20.12.2007, 14:30
Заходим на сайт: http://lenininc.com/win32api.html и покупаем у автора библиотеку с примерами. там есть всё: и заполнение КомбоБокса и много-много всего...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)