Come fare uno skip?

di NONONONO il
12 risposte
frase = "Inserire qui la frase";
for(int i=0;i<frase.size();i++)
{
	cout<<frase[i];
	Sleep(20);
}

Vorrei sapere se è possibile inserire all'interno di questo “for” qualcosa che, al click dell'utente, lo fermi per ‘skippare’ il ciclo, grazie in anticipo per chi mi risponde.
P.S. se l'utente non clicca niente esso stampa “frase” per intero e continua con il resto del programma.

12 Risposte

  • Mouse o tastiera?

  • 15/01/2023 - oregon ha scritto:


    Ma fa click dove?

    Semmai puoi controllare se viene usato un tasto …

    con click intendo se viene cliccato un tasto qualsiasi della tastiera, come posso fare?

  • Usa la API GetKeyState, per mouse e tastiera

  • La sintassi è nella documentazione

    https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getkeystate

  • 15/01/2023 - oregon ha scritto:


    La sintassi è nella documentazione

    https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getkeystate

    grazie, ti farò sapere se funziona

  • 15/01/2023 - oregon ha scritto:


    La sintassi è nella documentazione

    https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getkeystate

    Non riesco a farla funzionare

  • E cosa hai scritto?

  • Ad esempio, se scrivi

    if (GetKeyState(VK_SHIFT)) break;

    nel ciclo, questo termina se clicchi su uno SHIFT

  • 15/01/2023 - oregon ha scritto:


    Ad esempio, se scrivi

    if (GetKeyState(VK_SHIFT)) break;

    nel ciclo, questo termina se clicchi su uno SHIFT

    funziona, avevo usato una forma diversa e non mi funzionava, grazie ora parte correttamente

  • La prossima volta facci vedere cosa hai scritto invece di attendere codice pronto all'uso…

  • 15/01/2023 - oregon ha scritto:


    La prossima volta facci vedere cosa hai scritto invece di attendere codice pronto all'uso…

    Avevo scritto la stessa cosa (circa) senza l'if 

Devi accedere o registrarti per scrivere nel forum
12 risposte