PDA

Visualizza la versione completa : [DELPHI] Calcolatrice


AR64S-H
18-07-2002, 16:49
Sto creando una calcolatrice. Vorrei che quando premo il tbutton1 mi scriva nell'edit1 1, e che quando premo il pulsante tbutton2 mi scriva 2 accanto all'1.
Io ho provato con edit1.text:='1';
edit1.text:='2';
all'internodell'evento onclick di ognuno dei tasti. Il mio problema è che quando premo il tasto n°2 dopo il tasto n°1 mi sicancella l'1 e si scrive il 2.
Poi vorrei che solo quando si prema un operatore(+,-,/,*) nell'edit si cancelli il testo scrivendo i nuovi numeri.
Vorrei che l'edit si fermasse ad una determinata dimensione e che non andasse avanti se si scrivono altri numeri.
Evitare che si possa scrivere due volte il '.' dei numeri decimali.
Sono ancora alle prime armi siate gentili.:) :)

supernibbio
18-07-2002, 17:53
Una calcolatrice nn è una cosa facile come sembra...

per il problema della sostituzione puoi scrivere così:
al click del pulsante 1: edit1.text:=edit1.text+'1';
al click del pulsante 2: edit1.text:=edit1.text+'2';
così nn si sovrascrivono

per il secondo problema quando clicchi su un operatore (*/+-) si deve cancellare il controllo edit1 ma i dati che c'erano si devono salvare in una variabile che puoi chiamare temp di tipo stringa. scrivi così:
temp:=edit1.text;
edit1.text:='';

per la lunghezza devi utilizzare la proprietà maxlength di edit1

Per la virgola fai una variabile booleana chiamata virg e impostala a true se premi il tasto virg: es.

Codice per il tasto virgola:
if virg=true then
// non fa niente
else
begin
edit1:=edit1+','; // inserisce la virgola
virg:=true; // imposta a vero la presenza della virgola quindi se si clicca nn fa niente

end;

Ti ripeto: nn è facile come sembra fare una calcolatrice

AR64S-H
18-07-2002, 18:14
E mi sai dire per fargli scrivere da destra a sinistra.
E se in caso il numero è più lungo di quanto possa entrare nell'edit allora voglio che scriva il numero moltiplicato per E& dicendo con il numero dopo la e quanti 0 ci sono. genere calcolatrice scientifica?
Vorrei sapere inoltre come fargli premere il button1 quando premo 1 dal tastierino numerico o dai tasti normali. Di modo che non si può modificare l'edit però permetta di scrivere in ogni caso
Ti ringrazio.

r0x
18-07-2002, 22:21
Chiedi "Come si fa una calcolatrice?" che fai prima. TSK! :mad:

AR64S-H
18-07-2002, 23:02
hai ragione ma sono alle prime armi e non so fare molte cose

supernibbio
19-07-2002, 00:38
Da poco ho bruciato l'hard disk e ho perso tutti i dati altrimenti ti avrei dato una mia calcolatrice in delphi...

X scrivere da destra a sinistra devi utilizzare un label come display e non un campo edit, quindi non più edit1.text ma label1.caption. Setta la proprietà algnment del label su RightJustify...

Credo che delphi metta automaticamente la E e il numero di zeri ma non so come fare per settarlo a quante cifre voglio.. (forse fa automaticamente anche questo)...

se non utilizzi un edit ma un label ti viene anche facile il terzo punto: nella proprietà caption dei pulsanti 1 2 3 etc... non scrivere 1 2 3 ma &1 &2 &3 ecc. in modo che quando pigi sul tasto 1 il programma esegua il codice associato al pulsante 1, allo stesso modo con 2, 3 e con gli operatori aritmetici (quindi &* &/ &- &+)...

Ciao..(credo che ci risentiremo presto):ciauz:

alka
19-07-2002, 05:08
Originariamente inviato da AR64S-H
Sono ancora alle prime armi siate gentili.:)


Visto che dichiari di essere alle prime armi, forse non ti converrebbe partire con qualcosa di più semplice? Tanto per "scaldarti" sull'argomento e sul modo di funzionare di Delphi.
Realizzare una calcolatrice è forse più laborioso di quanto non possa essere propedeutico...poi, considerando che non riesci ad accodare un numero ad un altro alla pressione di un pulsante......
Non è per sminuirti, ma forse ti converrebbe farti le ossa (se la tua intenzione è quella di apprendere Delphi) con qualcosa di molto più semplice; è inutile partire da un progetto complesso senza conoscere in modo abbastanza approfondito le basi. Nessuno ha mai imparato a correre prima di saper almeno camminare.
Inoltre, se ti poni orizzonti così faticosi come il progetto di realizzare una calcolatrice, ben venga...ma se poi ti fai svelare tutti i procedimenti con 1000 domande in un messaggio senza studiare nulla autonomamente, mi sa che non ti servirà a nulla.

Pensaci su. :)

Ciao! :ciauz:

AR64S-H
19-07-2002, 13:07
vabbene ragazzi avete ragione mi devo impegnare di più e vi prometto che dora in poi non vi chiederò più niente riguardo questa calcolatrice. La finirò da solo e poi se vi andrà la scaricherete per vedere come è uscità.
Una sola cosa. Secondo voi ci sta bene un pulsante che apre un form con le informazioni riguardo al prodotto e al creatore?
Sapete dove posso trovare dei decompilatori?

Loading