Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    [Visual C#] Aggiungere il tasto invio al programma di calcolo

    E' possibile associare al tasto invio tutte le funzioni di un pulsante? Che codice devo scrivere su visual studio 2010?

    P.S.: Uso wpf e net.4.

    Grazie come sempre

  2. #2
    Sostituisci la MainWindow con questo codice

    codice:
     public MainWindow()
            {
                InitializeComponent();
                textBox1.KeyUp += new KeyEventHandler(textBox1_KeyUp);
            }
    
            void textBox1_KeyUp(object sender, KeyEventArgs e)
            {
                if (e.Key == Key.Return)
                {
                    MessageBox.Show("Hai premuto il tasto invio");
                }
            }
    P.S.
    Certo che sei un bel impegno .....

  3. #3
    Originariamente inviato da Jeremy75
    Sostituisci la MainWindow con questo codice

    codice:
     public MainWindow()
            {
                InitializeComponent();
                textBox1.KeyUp += new KeyEventHandler(textBox1_KeyUp);
            }
    
            void textBox1_KeyUp(object sender, KeyEventArgs e)
            {
                if (e.Key == Key.Return)
                {
                    MessageBox.Show("Hai premuto il tasto invio");
                }
            }
    P.S.
    Certo che sei un bel impegno .....
    Sei un genio!!! Wawww! Questo funziona alla grande! Ti chiedo ancora una cosa. Ho sostituito al messagebox il codice scritto all'interno del bottone e così ora ho un programma lungo il doppio con un intero codice che si ripete. Si può evitare di riscrivere tutto il codice?

  4. #4
    Ho sostituito al messagebox il codice scritto all'interno del bottone e così ora ho un programma lungo il doppio con un intero codice che si ripete. Si può evitare di riscrivere tutto il codice?
    Si .... ma dipende da cosa devi fare.
    Prova a mostrare il codice sostituito alla messagebox.

  5. #5
    Ma non é nulla di che... ci sono solo cicli for e cicli if... le uniche cose che ho ben chiare della programmazione e su cui mi diletto.. il blocco try che mi hai fatto notare, la dichiarazione delle variabili...

    L'ideale sarebbe poter includere quel codice in un file esterno e richiamarlo all'occorenza oppure in alternativa creare una funzione che fa determinate cose...

    Senza impazzire con il mio codice supponi questo caso qui:
    3 textbox + un pulsante con questo codice qui all'interno del pulsante:

    double A;
    double B;
    double C;
    double D;
    try
    {
    A = double.Parse(numero_a.Text);
    B = double.Parse(numero_b.Text);
    }
    catch (Exception)
    {
    MessageBox.Show("I dati di input sono sbagliati!", "ERRORE!", MessageBoxButton.OK, MessageBoxImage.Stop);
    }
    C=A+B+D;
    numero_c.Text = C.ToString();
    Il mio codice va a fare delle analisi su una matrice di dati (somme, ricerche valori, ecc...) che é quella di dimensioni enormi di cui ti parlavo nell'altro post e che vorrei spostare.
    La variabile D rappresenta la matrice di 70000 righe...

  6. #6
    Ti ho chiesto di vedere il codice perchè per ogni caso esiste una diversa soluzione ....
    Ad ogni modo, nel caso specifico, ti puoi creare una Routine che accetta come parametro la textbox dal quale è stata chiamata ed effettuare le operazioni che ti servono .... o addirittura farti restituire un valore di risultato delle operazioni.

    Se invece avessi voluto agire, per esempio, sull'aspetto della textbox o sul comportamento della textbox stessa .... ti avrei magari consigliato di creare un controllo personalizzato, ereditato da TextBox, all'interno del quale avresti potuto creare degli automatismi utili alle tue esigenze.

  7. #7
    Mi puoi illustrare il primo?

  8. #8
    Esempio:
    codice:
     void textBox1_KeyUp(object sender, KeyEventArgs e)
            {
                if (e.Key == Key.Return)
                {
                    Metodo(textBox1,textBox2,textBox3);
                }
            }
    
            private void Metodo(TextBox numero_a,TextBox numero_b,TextBox numero_c)
            {
                double A;
                double B;
                double C;
                double D;
                try
                {
                    A = double.Parse(numero_a.Text);
                    B = double.Parse(numero_b.Text);
                }
                catch (Exception)
                {
                    MessageBox.Show("I dati di input sono sbagliati!", "ERRORE!", MessageBoxButton.OK, MessageBoxImage.Stop);
                }
                C = A + B + D;
                numero_c.Text = C.ToString();
            }

  9. #9
    Funziona l'invio ma poi smete di lavorare il tasto a cui sono associate le funzioni. Nel caso specifico il tasto che fa la soma.


  10. #10
    Cosa significa ..... smette di funzionare?

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 © 2025 vBulletin Solutions, Inc. All rights reserved.