Dialog из ресурса

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by F1kus, 19 Aug 2008.

  1. F1kus

    F1kus Member

    Joined:
    3 Jan 2007
    Messages:
    0
    Likes Received:
    5
    Reputations:
    0
    Есть диалог запрятаный в файл .res как его вызвать через CreateDialog???
    Либо как создать виндовыми средствами диалог с логином и паролем как за .htaccess?
     
  2. 0verbreaK

    0verbreaK Elder - Старейшина

    Joined:
    30 Apr 2008
    Messages:
    318
    Likes Received:
    42
    Reputations:
    -3
    используя DialogBoxParam, хоть язык написал бы
     
  3. F1kus

    F1kus Member

    Joined:
    3 Jan 2007
    Messages:
    0
    Likes Received:
    5
    Reputations:
    0
    тфу ,забыл дельфи.
     
  4. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    Объявляешь ресурсы в rc файле
    brcc32 -32 -твой файл
    в проекте вызывается DialogBox(hInstance, 'MAIN_WINDOW', 0, @DlgProc);

    Сорец проекта написанного на чистом API в ссылке
    среди рамки проекта:
    1. чистый API
    2. пример работы с плагинами
    3. win32 GUI

    ссылка: http://slil.ru/26072115
     
  5. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    выглядит структура примерно так
    Code:
    program prog_name;
    {$R res.res}
    uses
      windows;
    const
     WM_CLOSE=$0010;
     WM_COMMAND=$0111;
     BN_CLICKED=0;
    
    
    function MainProc(wnd:dword; Msg : Integer; Wparam:dword; Lparam: dword): dword; stdcall;
    begin
    case msg of
     WM_CLOSE:exitprocess(0);
     WM_COMMAND:
      begin
       case Wparam of
        BN_CLICKED shl 16+3:myproc1();
        BN_CLICKED shl 16+2:myproc2();
        BN_CLICKED shl 16+1: // типа чтение из полей ввода
         begin
            GetWindowText(GetDlgItem(wnd,1002),host,255);
            GetWindowText(GetDlgItem(wnd,1003),path,255);
         end;
       end;
      end;
    end;
    exit;
    end;
    
    
    begin
    DialogBoxParam(hinstance,'Dialog_1',HWND_DESKTOP,@MainProc,0);
    end.