Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Programma simula registratore cassa
Forum - C# / VB.NET - Programma simula registratore cassa

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
ginmile77 (Normal User)
Newbie


Messaggi: 15
Iscritto: 06/08/2014

Segnala al moderatore
Postato alle 8:15
Mercoledì, 06/08/2014
Ciao a tutti. Ho ricreato in VB il funzionamento del registratore di cassa della mia attività. Non sono riuscito perchè non ho idea di come fare per eseguire questa particolarità. Praticamente nel momento in cui si digita sulla cassa, il display parte con 0,00. Se si inizia a digitare ad esempio 50 centesimi lui parte da destra e prosegue verso sinistra. Con la virgola sempre fissa. Non so come ricreare questa funzione. Mi aiutate?

PM Quote
Avatar
Snogar (Normal User)
Pro


Messaggi: 130
Iscritto: 09/01/2012

Segnala al moderatore
Postato alle 9:06
Mercoledì, 06/08/2014
Mmmmm se ho capito bene come funziona potresti provare a creare due variabili una per i centesimi e una per gli euro, a seconda del loro riempimento visualizzi virgola e affini.


PM Quote
Avatar
ginmile77 (Normal User)
Newbie


Messaggi: 15
Iscritto: 06/08/2014

Segnala al moderatore
Postato alle 9:31
Mercoledì, 06/08/2014
Ho provato con una maskedtexbox __,__ ma non mi permette di digitare da destra a sinistra. Avete una soluzione?

PM Quote
Avatar
vankraster (Member)
Rookie


Messaggi: 32
Iscritto: 05/11/2010

Segnala al moderatore
Postato alle 18:24
Mercoledì, 06/08/2014
è facile, ti metto un pseudocodice c#

Nel Textbox fai proprietà- TextAlign:Right
poi nel evento KeyPress collega questo codice:

Codice sorgente - presumibilmente C#

  1. int numero = 0;
  2.         bool firstPRESS = true;
  3.  
  4.         private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
  5.         {
  6.             if (firstPRESS)
  7.             {
  8.                 firstPRESS = false;
  9.                 textBox2.Text = "0,0" + e.KeyChar.ToString();
  10.                 int.TryParse(e.KeyChar.ToString(), out numero);
  11.             }
  12.             else
  13.             {
  14.                 int T_num = 0;
  15.                 int.TryParse(e.KeyChar.ToString(), out T_num);
  16.                 numero = (10 * numero) + T_num;
  17.                  
  18.                 decimal res = (decimal)numero / 100m;
  19.                 textBox2.Text = res.ToString("######0.00");
  20.             }
  21.  
  22.             e.Handled = true;
  23.         }



Ci possono togliere tutto tranne la ragione e con questa possiamo ricostruire l'universo.
PM Quote
Avatar
ginmile77 (Normal User)
Newbie


Messaggi: 15
Iscritto: 06/08/2014

Segnala al moderatore
Postato alle 19:30
Mercoledì, 06/08/2014
Appena arrivo a a casa provo. Comunque grazie mille

PM Quote
Avatar
ginmile77 (Normal User)
Newbie


Messaggi: 15
Iscritto: 06/08/2014

Segnala al moderatore
Postato alle 1:22
Giovedì, 07/08/2014
Perfetto funziona. Hai la possibilità di tradurlo in Vb.net? mille grazie

PM Quote
Avatar
dnha (Member)
Pro


Messaggi: 137
Iscritto: 24/07/2014

Segnala al moderatore
Postato alle 8:26
Giovedì, 07/08/2014
Codice sorgente - presumibilmente VB.NET

  1. Dim numero As Integer = 0
  2.     Dim firstPRESS As Boolean = True
  3.  
  4.     Private Sub TextBox2_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox2.KeyPress
  5.         If firstPRESS Then
  6.             firstPRESS = False
  7.             TextBox1.Text = "0,0" + e.KeyChar.ToString()
  8.             Integer.TryParse(e.KeyChar.ToString(), numero)
  9.         Else
  10.             Dim T_num As Integer = 0
  11.             Integer.TryParse(e.KeyChar.ToString(), T_num)
  12.             numero = (10 * numero) + T_num
  13.  
  14.             Dim res As Decimal = CDec(numero) / 100D
  15.             TextBox1.Text = res.ToString("######0.00")
  16.         End If
  17.  
  18.         e.Handled = True
  19.     End Sub



“La principale differenza tra una cosa che potrebbe rompersi e una cosa che non può in alcun modo rompersi è che quando una cosa che non può in alcun modo rompere si rompe, di solito risulta impossibile da riparare.” [Douglas Adams, Praticamente innocuo]
PM Quote
Avatar
ginmile77 (Normal User)
Newbie


Messaggi: 15
Iscritto: 06/08/2014

Segnala al moderatore
Postato alle 8:35
Giovedì, 07/08/2014
Ti ringrazio. Non riesco a capire la parte if firstpress then senza una assegnazione

PM Quote
Avatar
dnha (Member)
Pro


Messaggi: 137
Iscritto: 24/07/2014

Segnala al moderatore
Postato alle 9:00
Giovedì, 07/08/2014
:)

If firstPRESS equivale a If firstPRESS = True


“La principale differenza tra una cosa che potrebbe rompersi e una cosa che non può in alcun modo rompersi è che quando una cosa che non può in alcun modo rompere si rompe, di solito risulta impossibile da riparare.” [Douglas Adams, Praticamente innocuo]
PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo