msdos->windows anwendung



  • hallo,
    ich hab mit vc++ ein kleines programm geschrieben und moechte jetzt statt den nervigen "gib jetzt das ein " usw dialogen im msdos fenster eine windows anwendung daraus machen in der man die werte ueber schieberegler / fenster eingeben kann.
    wie geht das? bzw eher ein neues projekt anlegen und die jeweiligen programmzeilen aus der alten anwendung in das neue projekt kopieren, oder das alte projekt "umwandeln "(wie?) und eine oberflaeche basteln , die die jew. variablen an die urspruengliche main fkt uebergibt.

    weiss vielleicht jemand ob es dafuer irgendwo ein tutorial oä gibt...

    danke und gruz eartz



  • Musst ne neue Anwendung erstellen.



  • Wenn ich dich richtig versteh willst du ein Windows fenster statt dem dos fenster haben , naja. Das is ned so leicht , wie der anfang in c++ . Du musst da erst ma die Windowsgrundlagen lernen. ich gib dir ma kurz nen auszug aus dem zeug;)

    HWND CreateMainWindow(HINSTANCE hInstance)
    {
    WNDCLASSEX wndClass; // WNDCLASSEX Struktur

    // Struktur initialisieren
    wndClass.cbSize = sizeof(WNDCLASSEX); // Größe angeben (nie vergessen!)
    wndClass.style = CS_DBLCLKS | CS_OWNDC |
    CS_HREDRAW | CS_VREDRAW; // Standard Stile
    wndClass.lpfnWndProc = WindowFunc; // Die Callback Funktion angeben

    wndClass.cbClsExtra = 0; // Zusätzliche Angaben, wird nicht benötigt
    wndClass.cbWndExtra = 0; // Zusätzliche Angaben, wird nicht benötigt
    wndClass.hInstance = hInstance; // Anwendungsinstanz

    wndClass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); // Weisser Pinsel
    wndClass.hCursor = LoadCursor(NULL, IDC_ARROW); // Normaler Cursor
    wndClass.lpszMenuName = NULL; // Das Fenster hat kein Menü
    wndClass.lpszClassName = "WindowClass"; // Der Name der Klasse
    wndClass.hIcon = LoadIcon(NULL, IDI_WINLOGO); // Windows Logo
    wndClass.hIconSm = LoadIcon(NULL, IDI_WINLOGO); // Windows Logo

    RegisterClassEx(&wndClass);

    return CreateWindowEx(NULL, // Keine erweiterten Stile nutzen
    "WindowClass", // Klassenname
    "Ein einfaches Fenster",// Fenstertitel
    WS_OVERLAPPEDWINDOW | // Fenster
    WS_VISIBLE, // Eigenschaften
    0, 0, 400, 300, // Anfangsposition und Größe
    NULL, // Handle des Elternfensters
    NULL, // Handle des Menüs
    hInstance, // Anwendungsinstanz
    NULL); // wird nicht benötigt
    }

    so wenn du das irgendwo mal stehen siehst klapper den ganzen code durch und lern in , mid GDI kannst du dann was reinschreiben in dein fensterchen



  • das is winapi keine MFC.



  • Konsole --> WinAPI32:

    Versuche Dein Konsolenprogramm zunächst so umzubauen, dass I/O und Sonstiges möglichst gut voneinander getrennt ist, z.B. durch Funktionen, Klassen ...
    Dann kannst Du dies besser in andere Systeme mit GUI übernehmen, also schematisch:

    Eingabe(...) { ... }
    Ausgabe(...) { ... }
    
    Irgendetwas1(...) { ... }
    Irgendetwas2(...) { ... }
    
    int main()
    {
      Eingabe(...);
    
      Irgendetwas1(...);
      Irgendetwas2(...);
      ...
    
      Ausgabe(...);
      return 0;
    }
    

Anmelden zum Antworten