Icon in reinen Dialog (ohne WndProc) einbetten



  • Wie kann ich ein Icon in eine reine DialogBox (aufgerufgen aus der Ressource) integrieren ? Habe DialogBox mit diesem Befehl <- aufgerufen !



  • Als Fenster-Icon oder als Bild in dem Fenster selbst ?



  • Hallo,

    als Bild selbst in einer Dialogbox !



  • ich suche auch die antwort auf diese frage. wie muss ich die resource definieren, sodass man ein icon in der dialog-box sieht??

    thx, lw



  • Hm, einfach mittels ICON control statement im Dialog eintragen, zB so:

    ICON "ICONNAME1",IDC_ICON,5,5

    ICONNAME1 ist dann der Name des Icons, welches man eben irgendwo in dem .rc-file deinieren muss... in dem Fall also zB so:

    ICONNAME1 ICON DISCARDABLE "MeinIcon.ico"

    Und der passende Link: ICON Control

    [ Dieser Beitrag wurde am 10.11.2002 um 13:01 Uhr von kwoTx editiert. ]



  • danke, aber das weiß ich schon. wie kommt nun das icon in den dialog?



  • Ich glaube nicht, dass du das schon wusstest.
    Vielleicht liest du nochmal, was ich gepostet habe. Wenn du darauf kein Bock hast, dann schau dir mal dieses Beispiel an, m.E. wolltest du nämlich das wissen - könnte natürlich sein, dass ich dich nicht richtig verstanden habe, dann stell bitte deine Frage neu.

    // .cpp-file
    #include <windows.h>
    BOOL CALLBACK DlgProc(HWND,UINT,WPARAM,LPARAM) ;
    
    int WINAPI WinMain (HINSTANCE hi,HINSTANCE,LPSTR,int)
    {
        DialogBox (hi, TEXT("AboutBox"),0,DlgProc) ;
        return 0;
    }
    
    BOOL CALLBACK DlgProc (HWND hDlg, UINT msg, 
                                WPARAM wp, LPARAM lp)
    {
         switch (msg)
         {
         case WM_INITDIALOG :
              return TRUE ;
    
         case WM_COMMAND :
              switch (LOWORD (wp))
              {
              case IDOK :
              case IDCANCEL :
                   EndDialog (hDlg, 0) ;
                   return TRUE ;
              }
              break ;
         }
         return FALSE ;
    }
    
    // .rc-file
    #include <windows.h>
    
    ABOUTBOX DIALOG DISCARDABLE  32, 32, 180, 102
    STYLE DS_MODALFRAME | WS_POPUP
    FONT 8, "MS Sans Serif"
    BEGIN
        DEFPUSHBUTTON   "OK",IDOK,66,81,50,14
        ICON            "ICONNAME1",-1,7,7,21,20
    END
    
    ICONNAME1 ICON DISCARDABLE "MeinIcon.ico"
    


  • Ich kann hier nur sagen, wie ich das kürzlich mal gemacht habe: Da, wo das Icon im Dialog auftauchen sollte, habe ich ein Static (32x32) mit dem Style SS_ICON hingepappt, und in WM_INITDAILOG habe ich STM_SETIMAGE an das Static-Control gesendet.
    Die Methode von kwoTx kenne ich noch nicht. Wenn's funzt, ist sie sicher besser als meine.


Anmelden zum Antworten