Separare console da finestra. C++

di il
2 risposte

Separare console da finestra. C++

Salve utenti, ho un piccolo problemino che mi tartassa da giorni; ho creato un progetto su CodeBlocks in C++ di tip Gui Window Project ovvero quello per creare delle finestre windows. Quando avvio il Debug però mi apre sia la console che la finestra, volevo sapere se c'è un modo che permette di nascondere la console e visualizzare solo la finestra. Vi prego siate chiari e limpidi nelle risposte anche perché questo per me e' un argomento nuovo, Grazie in anticipo.

2 Risposte

  • Re: Separare console da finestra. C++

    Due premesse:
    1) non sono un esperto, quindi prendi con le molle le mie "soluzioni";
    2) non son certo d'aver capito bene quel che vorresti ottenere.

    Detto questo, puoi nascondere (non chiudere) la finestra della console appena il programma viene avviato, in WinMain():
    int WINAPI WinMain( HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR cmnd, int show ) {
        HWND hWndConsole = GetForegroundWindow();
        ShowWindow( hWndConsole, SW_HIDE );
    
        // [...]
    Appena prima di uscire dal programma, alla fine di WinMain(), potresti renderla nuovamente visibile:
        // [...]
        
        ShowWindow( hWndConsole, SW_SHOW );
        return messages.wParam;
    } // fine di WinMain()
    GetForegroundWindow(), qui:


    ShowWindow(), qui:
  • Re: Separare console da finestra. C++

    Un'altra possibilità è scegliere il menù Project => Properties... e, nella finestra di dialogo che si apre, scegliere la tabella Build Targets. Cercando nella finestra, c'è un'area chiamata "Select build target options" nella quale è presente un tendina etichettata "type:" cambiando "Console application" con "GUI application" nella tendina, la console non viene più mostrata. A quel punto, però, non potresti più usare l'in/out.
Devi accedere o registrarti per scrivere nel forum
2 risposte