begin process at 2012 02 11 02:46:21
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > CONVERTISSEUR ?URO-FRANCS

CONVERTISSEUR ?URO-FRANCS


 Information sur la source

Note :
5 / 10 - par 1 personne
5,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Classé sous :convertisseur, euros, francs Niveau :Débutant Date de création :25/03/2004 Vu / téléchargé :3 605 / 322

Auteur : bopi

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 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

Source avec Zip TRI DBRID CROISSANT ET DECROISSANT par walidlam
Source avec Zip PETITE APPLICATION DE RETENUE par walidlam
Source avec Zip APPLICATION ALIAS+EXCEL par walidlam
Source avec Zip ACCÈS À DIFFÉRENTES PROPRITÉS D'UNE FORME PARENT À PARTIR DE... par ioda19
CODAGE EN BASE64 DE CHAÎNES UNICODE par gta126

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture SIZECONVERTER : UNE MINI LIBRAIRIE DE CONVERSION DE TAILLE par LaDentDeLait
Source avec Zip Source avec une capture CONVERTISSEUR D'UN NOMBRE DÉCIMAL EN BINAIRE ET HEXADECIMAL par ludokk
Source avec Zip CONVERTISSEUR BINAIRE EN INTEL HEX par basssem81
Source avec Zip CONVERTISSEUR BINAIRE par abdousoft
Source avec Zip Source avec une capture CONVERTISSEUR IMAGE TO ASCII (ÉDITION RÉVISÉE) par Forman

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire


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&#233;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 &#224; tousAlors voila...mon projet est le suivant : cr&#233;er un convertisseur qui permettrait ceci :j'ai chez moi des wav, avec un premier SUM dans SQL [ par codial ] Bonjour,j'ai &#233;crit une requ&#234;te avec la fonction SUM:&nbsp;&nbsp;&nbsp;&nbsp; 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&#232;me, j'ai achet&#233; 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 


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,763 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales