CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Delphi: j'ai des questions

korantin270
korantin270
Niveau 10
26 juillet 2006 à 16:22:41

:salut:
j´ai pas mal de questions sur le dephi a poser:
- j´ai fait un projet, et je me suis rendu compte qu´entre plusieurs unités, les variables et les procédures et fonctions sont indépendants. comment faire pour qu´il soient commun ? (les pointeurs c´est vraiment pas pratique)

- comment peut-on lancer un fichier éxécutable avec une instruction ? (comme avec "call machin.exe" dans un batch)

et sinon, j´ai une autre question sur le C++: est-ce qu´on peut créér des boutons (pas a partir de gifs) dans un programme ?

voilà.

godrik
godrik
Niveau 30
26 juillet 2006 à 16:46:49

pour lancer des executables, il faut faire utilisé une bibliothèque externe.

La libc propose la fonction system qui fait cela.
Tu as aussi execv et fork de la libposix.
Apres par OS tu as une facon de faire cela

pour le C++ et les boutons.
Oui on peut avec des bibliothèques graphiques: win32, MFC, wxwidget...

darth-bane
darth-bane
Niveau 10
26 juillet 2006 à 23:47:36

Tu peux très bien définir des fonctions procédures, et variables globales, mais ce n´est pas très conseillé.

Il existe une fonction qui s´appelle "shellexecute" si je me souviens bien, qui permet d´exécuter un fichier exécutable ou même l´exécutable qui est associé à une extension comme par exemple le ´.doc´.

korantin270
korantin270
Niveau 10
27 juillet 2006 à 10:27:14

:merci:
euh, mais comment on fait pour définir des variables et fonctions globales, faut aller dans la rubrique "public" de l´en-tete du programme ?

korantin270
korantin270
Niveau 10
27 juillet 2006 à 23:34:24

j´ai trouvé pour les variables, faut les mettre dans une unité spécialement fait pour et faut marquer le nom de mon unité dans "unit" de chaque autres unités. Mais ça marche pas pour les procédures, comment faire ?? ?

darth-bane
darth-bane
Niveau 10
28 juillet 2006 à 01:50:43

Si je me souviens bien (c´est loin tout ça), s´il n´y en a pas, tu peux créer une zone "public" dans l´unité, et y placer tes procédures et fonctions de la manière suivante :

Unit mon_unite;

Interface

Uses windows, messages, ...;

Type
TMyUnit = Class(Object)
Private
{ Déclarations privées }
procedure ma_procedure_privee;
public
{ Déclarations publiques }
procedure ma_procedure_publique;
end;

var
MainForm: TMainForm;

implementation

{$R *.dfm}

procedure TMyUnit.ma_procedure_publique;
begin
{contenu}
end;

procedure TMyUnit.ma_procedure_privee;
begin
end;

End.

Je ne suis pas certain du résultat, j´ai fait ça de tête sans vérifier si ça fonctionne.

darth-bane
darth-bane
Niveau 10
28 juillet 2006 à 01:52:41

Oups, petite erreur, remplace :
MainForm : TMainForm;
par :
mon_unite : TMyUnit;

korantin270
korantin270
Niveau 10
28 juillet 2006 à 16:52:44

ShowMessage(´merci !! !´);

darth-bane
darth-bane
Niveau 10
28 juillet 2006 à 19:07:16

Ca fonctionne ?

korantin270
korantin270
Niveau 10
29 juillet 2006 à 18:02:00

Je viens d´essayer, mais ça ne fonctionne pas...

enfin, c´est pas grave: j´ai réussi à faire mon programme sans utiliser de procédures globales.

si tu trouve comment faire, dis le moi quand même stp (ça pourrait mre servir plus tard).

darth-bane
darth-bane
Niveau 10
29 juillet 2006 à 18:04:08

Celà fait bien 2 ou 3 ans que je n´ai pas fait de Delphi, j´ai migré vers le xhtml/css/Javascript/PHP/MySQL.

korantin270
korantin270
Niveau 10
03 août 2006 à 22:43:53

J´ai une nouvelle question toute bête mais je ne trouve pas la solution...
j´aimerais afficher le contenu d´une variable a virgule (l´afficher tronqué aux dixièmes) sur une fiche (a partir d´un "real") sans afficher plein de zéros et les expotentielles (par exemple 1,50000+E00001), et je ne trouve pas comment faire...

pourriez vous m´aider :svp:

darth-bane
darth-bane
Niveau 10
04 août 2006 à 01:03:47

Ah, la vache, ça, je ne m´en souviens plus, mais alors là, c´est le trou noir total !

darth-bane
darth-bane
Niveau 10
04 août 2006 à 01:08:26

Tout ce que je peux te dire, c´est que j´utilisais énormément l´aide contextuelle de Delphi.
Essaye par exemple en faisant Ctrl-F1 sur ´real´ ou sur ´write´.

Quelque chose me reviens, mais je ne suis pas du tout certain que celà soit ça.

MaVariable = 10/3;
write(MaVariable:10:2);

normalement, celà devrait t´afficher la valeur de Mavariablesur maximum 10 caractères dont 2 décimales.
Vérifie quand même avec l´aide contextuelle.

korantin270
korantin270
Niveau 10
04 août 2006 à 13:12:50

mais je veux la marquer sur un composant...
donc il me faut une chaine a la fin.
et puis write permet d´écrire dans un fichier...
par exemple, je dois marquer:
monlabel.text := mavariableenchaine

et avec l´aide (fonction roundto), je peut tronquer 10/3 aux diwièmes mais ça me donne 0,33000000+E0000001 au lieu de 3,3 quand je veux le transformer en chaine...

darth-bane
darth-bane
Niveau 10
04 août 2006 à 19:57:37

Normalement, sur les champs de saisie, tu peux définir un masque, mais je suis désolé, je ne pourrais pas te dire comment, car comme je te l´ai dis, je ne fais plus de Delphi depuis 2 ou 3 ans, il n´est plus installé sur mon PC et je te dis ça d´après mes souvenirs.

korantin270
korantin270
Niveau 10
04 août 2006 à 23:17:12

j´ai trouvé, il suffit de se servir de floattostr() et pas de val().
:merci: quand même...

darth-bane
darth-bane
Niveau 10
04 août 2006 à 23:32:19

Maintenant que tu me le dis ... :rire:

En fait, je cherchais dans ma mémoire comment mettre un masque sur un champs de saisie, pas une fonction de conversion valeur vers chaine.

korantin270
korantin270
Niveau 10
05 août 2006 à 23:10:42

ah, ok, on s´est mal compris. la prochaine fois j´essaierai d´etre plus clair. :)

korantin270
korantin270
Niveau 10
21 août 2006 à 13:42:00

:salut:
j´ai une nouvelle question:
Existe t´il une procédure qui permet de copier un fichier ? Et d´effacer un fichier ou un répertoire ?

si il n´y en a pas, comment fait-on pour que la console windows accepte les accents ("éèà")à partir d´un batch généré par un éxecutable ? je pense qu´il faut les remplacer par d´autres caractères qui redonnerons les bon caractères dans la console, mais lequels ?

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment