|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
CONVERTISSEUR ?URO-FRANCS
Information sur la source
Description
convertisseur complet: gere la gestion des deux zero apres la virgule(roundto) bloc le clavier (editkeytext) utlise des variable pour selectionner les editText utlisitation dun label pour lancer une url sur le net traitement de fichier help avec racourcci sur exe form sous xp(xpman dans les uses) fome a propos modification du taux de change (form2) bouton tspeedbutton pour donner de la couleur a votre txt. Voila jai essaye de le faire simple et fonctionnel pour les utilisateurs et quelque explication dans le pas. @++++++++ bopi
Source
- unit Unit1;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, ComCtrls, StdCtrls, xpman, shellapi, math, Menus, Buttons;
-
- type
- TMain = class(TForm)
- MainMenu1: TMainMenu;
- Fichiers1: TMenuItem;
- Apropos1: TMenuItem;
- Apropos2: TMenuItem;
- N1: TMenuItem;
- Lisezmoi1: TMenuItem;
- Quitter1: TMenuItem;
- Edit2: TEdit;
- Label1: TLabel;
- StatusBar1: TStatusBar;
- Label2: TLabel;
- Label3: TLabel;
- SpeedButton1: TSpeedButton;
- Edit1: TEdit;
- Quitter2: TMenuItem;
- SpeedButton2: TSpeedButton;
- Label4: TLabel;
- PopupMenu1: TPopupMenu;
- QU1: TMenuItem;
- procedure SpeedButton1Click(Sender: TObject);
- procedure Quitter2Click(Sender: TObject);
- procedure Quitter1Click(Sender: TObject);
- procedure Edit1Change(Sender: TObject);
- procedure Edit2Change(Sender: TObject);
- procedure SpeedButton2Click(Sender: TObject);
- procedure Lisezmoi1Click(Sender: TObject);
- procedure Label4Click(Sender: TObject);
- procedure Edit1KeyPress(Sender: TObject; var Key: Char);
- procedure Edit2KeyPress(Sender: TObject; var Key: Char);
- procedure QU1Click(Sender: TObject);
- procedure Apropos2Click(Sender: TObject);
- private
-
- public
- convstr:string;
- end;
- var
- Main: TMain;
- resultat:string;
- { Variable permettant de connaître l'Edit que l'on modifie}
- ChampEditer:Integer;
-
- { J'ai rajouter une test supplémentaire pour savoir quel Edit on modifie pour
- éviter que l'un provoque l'événement OnChange par rapport à l'autre.
- }
-
- implementation
-
- uses Unit2, Unit3;
-
- {$R *.dfm}
-
- procedure TMain.Edit1KeyPress(Sender: TObject; var Key: Char);
- begin
- If Not(Key in ['0'..'9',#8,',','.']) Then Key := #0;
- { Indique au programme que l'on modifie l'Edit1}
- ChampEditer:=1;
- end;
-
- procedure TMain.Edit2KeyPress(Sender: TObject; var Key: Char);
- begin
- If Not(Key in ['0'..'9',#8,',','.']) Then Key := #0;
- { Indique au programme que l'on modifie l'Edit2}
- ChampEditer:=2;
- end;
- procedure TMain.SpeedButton1Click(Sender: TObject);
- begin
- close;
- end;
-
- procedure TMain.Quitter2Click(Sender: TObject);
- begin
- close;
- end;
-
- procedure TMain.Quitter1Click(Sender: TObject);
- begin
- Form2.show;
- end;
-
- procedure TMain.Edit1Change(Sender: TObject);
- var
- ch:char;
- x:integer;
- begin
- {ici convertion du point en virgule}
- if edit1.text<>'' then begin
- convstr:=edit1.text;
- x:=1;
- while (convstr[x]<>'')do
- begin
- if convstr [x]='.'then
- begin
- ch:=(',');
- convstr[x]:=ch;
- end;
- x:=x+1
- end;
- { On test si on modifie Edit2 car ce qui suit ne doit pas être exécuter du fait
- que l'événement OnChange va s'exécuter vers Edit2 car on envoi le résulat vers
- Edit2, donc changement de la valeur de Edit2}
- if ChampEditer<>2 then
- begin
- { On teste si la longueur est vide pour mettre à zéro la valeur de Edit2.
- Cela est plus propre et évite que le programme conserve la dernière conversion
- effectuée.}
- if length(edit1.Text)=0 then edit2.Text:='';
- if edit1.text<>''then
- begin
- resultat:=floattostr(strtofloat(convstr)*strtofloat( form2.edit1.Text));
- resultat:=floattostr(roundto(strtofloat(resultat),-2));//ROUNDTO CONVERTI LES DEUX CHIFFRES APRES LA VIRGULE(ne pas oublier de mettre math dans uses}
- edit2.Text:=resultat;
- end;
- end;
- end;
- end;
- procedure TMain.Edit2Change(Sender: TObject);
- var
- ch:char;
- x:integer;
- begin
- if edit2.text<>'' then begin
- convstr:=edit2.text;
- x:=1;
- while (convstr[x]<>'')do
- begin
- if convstr[x]='.'then
- begin
- ch:=(',');
- convstr[x]:=ch;
- end;
- x:=x+1
- end;
- { On test si on modifie Edit1 car ce qui suit ne doit pas être exécuter du fait
- que l'événement OnChange va s'exécuter vers Edit1 car on envoi le résulat vers
- Edit1, donc changement de la valeur de Edit1}
- if ChampEditer<>1 then
- begin
- { On teste si la longueur est vide pour mettre à zéro la valeur de Edit1.
- Cela est plus propre et évite que le programme conserve la dernière conversion
- effectuée.}
- if length(edit2.Text)=0 then edit1.Text:='';
- if edit2.text<>'' then
- begin
- resultat:=floattostr(strtofloat(convstr)/strtofloat( form2.edit1.Text));
- resultat:=floattostr (roundto(strtofloat(resultat),-2));
- edit1.Text:=resultat;
-
- end;
- end;
- end;
- end ;
- procedure TMain.SpeedButton2Click(Sender: TObject);
- begin
- edit2.TEXT:='';
- Edit1.text:='';
- end;
- procedure TMain.Lisezmoi1Click(Sender: TObject);
- begin
- application.ShowMainForm:=false;
- aboutbox.show;
- end;
-
- procedure TMain.Label4Click(Sender: TObject);
- begin
- ShellExecute(0,nil,'http://www.delphi.com',nil,nil,sw_maximize);
- end;
-
- procedure TMain.QU1Click(Sender: TObject);
- begin
- Application.helpjump('sommaire');
- end;
-
- procedure TMain.Apropos2Click(Sender: TObject);
- begin
- ShellExecute(Handle,'open','EURO_FRANC.HLP',nil,nil,SW_SHOWDEFAULT );
- end;
-
- end.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, xpman, shellapi, math, Menus, Buttons;
type
TMain = class(TForm)
MainMenu1: TMainMenu;
Fichiers1: TMenuItem;
Apropos1: TMenuItem;
Apropos2: TMenuItem;
N1: TMenuItem;
Lisezmoi1: TMenuItem;
Quitter1: TMenuItem;
Edit2: TEdit;
Label1: TLabel;
StatusBar1: TStatusBar;
Label2: TLabel;
Label3: TLabel;
SpeedButton1: TSpeedButton;
Edit1: TEdit;
Quitter2: TMenuItem;
SpeedButton2: TSpeedButton;
Label4: TLabel;
PopupMenu1: TPopupMenu;
QU1: TMenuItem;
procedure SpeedButton1Click(Sender: TObject);
procedure Quitter2Click(Sender: TObject);
procedure Quitter1Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure Lisezmoi1Click(Sender: TObject);
procedure Label4Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure QU1Click(Sender: TObject);
procedure Apropos2Click(Sender: TObject);
private
public
convstr:string;
end;
var
Main: TMain;
resultat:string;
{ Variable permettant de connaître l'Edit que l'on modifie}
ChampEditer:Integer;
{ J'ai rajouter une test supplémentaire pour savoir quel Edit on modifie pour
éviter que l'un provoque l'événement OnChange par rapport à l'autre.
}
implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TMain.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
If Not(Key in ['0'..'9',#8,',','.']) Then Key := #0;
{ Indique au programme que l'on modifie l'Edit1}
ChampEditer:=1;
end;
procedure TMain.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
If Not(Key in ['0'..'9',#8,',','.']) Then Key := #0;
{ Indique au programme que l'on modifie l'Edit2}
ChampEditer:=2;
end;
procedure TMain.SpeedButton1Click(Sender: TObject);
begin
close;
end;
procedure TMain.Quitter2Click(Sender: TObject);
begin
close;
end;
procedure TMain.Quitter1Click(Sender: TObject);
begin
Form2.show;
end;
procedure TMain.Edit1Change(Sender: TObject);
var
ch:char;
x:integer;
begin
{ici convertion du point en virgule}
if edit1.text<>'' then begin
convstr:=edit1.text;
x:=1;
while (convstr[x]<>'')do
begin
if convstr [x]='.'then
begin
ch:=(',');
convstr[x]:=ch;
end;
x:=x+1
end;
{ On test si on modifie Edit2 car ce qui suit ne doit pas être exécuter du fait
que l'événement OnChange va s'exécuter vers Edit2 car on envoi le résulat vers
Edit2, donc changement de la valeur de Edit2}
if ChampEditer<>2 then
begin
{ On teste si la longueur est vide pour mettre à zéro la valeur de Edit2.
Cela est plus propre et évite que le programme conserve la dernière conversion
effectuée.}
if length(edit1.Text)=0 then edit2.Text:='';
if edit1.text<>''then
begin
resultat:=floattostr(strtofloat(convstr)*strtofloat( form2.edit1.Text));
resultat:=floattostr(roundto(strtofloat(resultat),-2));//ROUNDTO CONVERTI LES DEUX CHIFFRES APRES LA VIRGULE(ne pas oublier de mettre math dans uses}
edit2.Text:=resultat;
end;
end;
end;
end;
procedure TMain.Edit2Change(Sender: TObject);
var
ch:char;
x:integer;
begin
if edit2.text<>'' then begin
convstr:=edit2.text;
x:=1;
while (convstr[x]<>'')do
begin
if convstr[x]='.'then
begin
ch:=(',');
convstr[x]:=ch;
end;
x:=x+1
end;
{ On test si on modifie Edit1 car ce qui suit ne doit pas être exécuter du fait
que l'événement OnChange va s'exécuter vers Edit1 car on envoi le résulat vers
Edit1, donc changement de la valeur de Edit1}
if ChampEditer<>1 then
begin
{ On teste si la longueur est vide pour mettre à zéro la valeur de Edit1.
Cela est plus propre et évite que le programme conserve la dernière conversion
effectuée.}
if length(edit2.Text)=0 then edit1.Text:='';
if edit2.text<>'' then
begin
resultat:=floattostr(strtofloat(convstr)/strtofloat( form2.edit1.Text));
resultat:=floattostr (roundto(strtofloat(resultat),-2));
edit1.Text:=resultat;
end;
end;
end;
end ;
procedure TMain.SpeedButton2Click(Sender: TObject);
begin
edit2.TEXT:='';
Edit1.text:='';
end;
procedure TMain.Lisezmoi1Click(Sender: TObject);
begin
application.ShowMainForm:=false;
aboutbox.show;
end;
procedure TMain.Label4Click(Sender: TObject);
begin
ShellExecute(0,nil,'http://www.delphi.com',nil,nil,sw_maximize);
end;
procedure TMain.QU1Click(Sender: TObject);
begin
Application.helpjump('sommaire');
end;
procedure TMain.Apropos2Click(Sender: TObject);
begin
ShellExecute(Handle,'open','EURO_FRANC.HLP',nil,nil,SW_SHOWDEFAULT );
end;
end.
Conclusion
Ceci est mon logiciel fini ,je pense que sa peut s ameliorer sur le fonctionnent ,si vous avez des astuces plus simple,envoier moi vos sources theobulck@msn.com,sinon pas de bug connu,merci @++++++++++bopi
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
CONVERTISSEUR VB -> DELPHI [ par Antoine ]
Salut !Quelqu'un peut-il me dire où je peux télécharger un convertisseur permettant de traduire le langage Visual Basic en delphi ? Merci beaucoup !
Convertisseur euro/franc ; franc/euro [ par Zangdar ]
sur http://zangdar.free.fr/site/programme/convertisseur.v1.2.exe @++http://www.zangdar.fr.stPs : Ca serait vachement sympas de cliquer sur mabannière
convertisseur [ par OlivierAfpaRoubaix ]
Bonjour , je cherche un source c#,un add pour visual studio ou delphi pour convertir un code delphi vers c#, et inversement . Merci d'avance.Olivier.
Convertisseur... [ par MAsterC ]
Bonjour à tous!Je voudrai savoir si en Delphi il exite un fonction ou autre pour convertir un fichier .AVI vers un fichier .MPG?Merci d'avance. MAster
convertisseur octet [ par Maniaxman ]
salut, j'aimerais créer un programme qui permet convertir un octet, en kilo, en mega, en giga, etc. et qu'il puisse le faire dans tous les sens,
convertisseur mp3-> wav et vice versa [ par nekinox ]
Bonjour à tousAlors voila...mon projet est le suivant : créer un convertisseur qui permettrait ceci :j'ai chez moi des wav, avec un premier
SUM dans SQL [ par codial ]
Bonjour,j'ai écrit une requête avec la fonction SUM: monSql:= 'SELECT Import.* , sum(Euros) Total_Euros FROM Import
Port serie N°6 dans Delphi 4 [ par froggy666 ]
Bonjour, voila j'ai un gros problème, j'ai acheté un convertisseur rs232/USB pour pouvoir utiliser un lecteur de carte a puce, jusque la auc
Pour l'amour du ciel, je ne sais pas encore comment...? [ par new2000 ]
POUR L'AMOUR DU CIEL, PRIERE DE BIEN VOULOIR REPONDRE A MA PREOCCUPATION. QUE FAIRE???Juste une idée pratique comme dans notre quotidien:j'ai une tabl
comment faire un convertisseur de date [ par loupgaroux ]
slt all je cherche comment faire un convertisseur de date en hexa donc en gros un convertisseur decimal to hexa ex 25/01/2007 = 22 39 et l'inverse
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|