Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536

    [C++]funzione con esc. come?

    Ciao ragazzi,
    E' possibile implementare un programma in modo che, nel caso in cui
    l'utente abbia fatto una scelta sbagliata nelle opzioni e non voglia
    più continuare nel processo o nella procedura attivata, possa ritornare
    indietro alla scelta precedente o alla funzione precedente?
    Non so se sono stato chiaro..pensate ad esempio al tasto ESC che viene
    molte volte utilizzato nelle applicazioni commerciali per ritornare
    al menù principale (o alla scelta o bivio precedente)
    faccio 3 casi:

    1)si chiede all'utente, ad esempio di fare una scelta:
    a) modifica dati
    b) visualizza dati
    l'utente preme "a" e avvia la procedura e le funzioni
    dell'opzione "a" ma si accorge che ha sbagliato e voleva invece premere "B",
    come si fa a tornare indietro in questo caso?


    2)L'utente sceglie un opzione e avvia una procedura, che a sua volta impone di fare
    altre scelte e sia avviano altre procedure ecc ecc. Ad un certo punto
    vuole interrompere tutto e tornare al MENU PRINCIPALE (in ufficio avevo
    un'applicazione che tornava al menu principale o alla procedura precedente,
    premendo tante volte il tasto ESC).


    3)L'utente sta inserendo i dati di un cliente (ad esempio) così:
    Inserisci Nome: Gianni
    inserisci Cognome: Rossi
    inserisci Indirizzo:

    ..qui si rende conto che ha sbagliato ad inserire "Rossi". Come fa a tornare
    al scelta precedente (al cin o cin.getline precedente, per intenderci)?

    I primi due casi sono molto simili a quanto pare
    Potete aiutarmi?
    (un po' di codice, please.)
    grazie anticipatamente.

  2. #2
    Utente bannato
    Registrato dal
    Nov 2003
    Messaggi
    558
    Supponendo che il menù sia dentro un ciclo infinito e ad ogni opzione corrisponda un altro ciclo infinito puoi interromperlo alla pressione di ESC con una condizione come quests:

    codice:
    char esc ;
    
    ...
    ...
    
    esc=getch () ;
    
    if (esc==27)
        break ;
    27 è il codice ASCII corrispondente al tasto ESC. In questo modo il ciclo si interrompe e si ritorna al 'livello' superiore,ovvero al menù

    Era questo che intendevi?

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536
    grazie per l'interessamento,
    provo e ti faccio sapere come va
    ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536
    non so... mi da un errore sulla riga dove è posizionata la funzione:

    esc=getch () ;


    nel log così riportato:


    getch' undeclared (first use this function)
    (Each
    undeclared identifier is reported only once for each function it appears
    in.)
    non capisco.
    Sbaglio qualcosa?
    ciao e grazie

  5. #5
    Utente bannato
    Registrato dal
    Nov 2003
    Messaggi
    558
    Originariamente inviato da lucas726
    non so... mi da un errore sulla riga dove è posizionata la funzione:

    esc=getch () ;


    nel log così riportato:


    getch' undeclared (first use this function)
    (Each
    undeclared identifier is reported only once for each function it appears
    in.)
    non capisco.
    Sbaglio qualcosa?
    ciao e grazie
    devi includere <stdio.h>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.