with TIniFile.Create(ChangeFileExt(Application.ExeName, '.ini')) do
try
unentier := ReadInteger('Section', 'Clé', Valeur par defaut);
unechaine := ReadString('Section', 'Clé2', Valeur par defaut );
WriteBool('Section', 'Clé3', valeur);
finally
Free;
end;
etc...
[edtdd]--Message édité par antp--[/edtdd]
Tetedeiench
Tinifile :(
antp
Tetedeiench a écrit a écrit :
Merde, il est ou ce composant ?
je le vois pas :(
quel compo ?
Tetedeiench
Merde, il est ou ce composant ?
je le vois pas :(
antp
haaa j'arrive trop tard, c pcq y a un super topic de 8 pages sur un boolay et ses 1 millions de mail sur software & reseau
Release;
Freeandnil(ModifierBateau);
normal que ca plante
Release -> libère la form quand elle a traité tous ses évenements
FreeAndNil -> libère la form tt de suite et la met a nil
tu dois faire:
Release;
ModifierBateau := nil;
la form sera bien libérée par le release (normalement).
edit: apparemment la solution de Poire avec le caFree est bonne aussi, ça doit faire la même chose.
[edtdd]--Message édité par antp--[/edtdd]
[SDF]Poire
Tetedeiench a écrit a écrit :
ouaip, tu dois avoir raison ;)
Oui oui je te jure :D :hello:
Tetedeiench
ouaip, tu dois avoir raison ;)
[SDF]Poire
euh... T fada ? utilise TIniFile pour sauver des options... va pas te galéré avec 1 TFileStream
Tetedeiench
Oui mais bon, ca reste un projet ...
Donc on veut montrer qu'on sait en faire des choses ;)
Si on y arrive pas pour le flux, on fera via le Tinifile, sois en persuadé !
On aura pas créé de composant par contre, mais on aura programmé un menu de la maurkitue a gauche ;)
[SDF]Poire
Tetedeiench a écrit a écrit :
Plus que 3 jours, et pas mal de choses a faire ( un flux au démarrage pour lire un fichier texte contenant des données "basiques" qu'on doit mémoriser
Pour ça utilise un TIniFile C trés pratique ;)
Tetedeiench
[SDF]Poire a écrit a écrit :
c simple : caFree demande a libéré la form à la fermeture au lieu de la cacher. G eu le même pb y a pas longtemps ;)
Merci Buitoni :jap:
Ouh que oui bourdail :love:
Plus que 3 jours, et pas mal de choses a faire ( un flux au démarrage pour lire un fichier texte contenant des données "basiques" qu'on doit mémoriser, pas mal de Tform d'ajout, modification et suppression d'enregistrement (chiant) et quelques autres trucs...
MAIS HEUREUX BOURDAIL on a plus d'obstacle a priori...
Meme OLE s'est plié a notre volonté ;)
[SDF]Poire
c simple : caFree demande a libéré la form à la fermeture au lieu de la cacher. G eu le même pb y a pas longtemps ;)
Merci Buitoni :jap:
Tetedeiench
MAGNIFIQUE SDF POIRE !
Décidément, tu es mon dieu :)
Tu peux m'expliquer cependant ?
[SDF]Poire
On a à chaque fois qq secondes de décalage et C relou ;)
[SDF]Poire
procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
+ de free ou autre et roulez :)
Tetedeiench
[SDF]Poire a écrit a écrit :
il faut faire d'abord le close puis le free en vérifiant que C pas à nil....
Je peux pas faire de close, ca équivaut a diminuer la form (elle est en TformStyle = MDIchild )
Donc des que l'utilisateur veut la fermer ben je la détruit, tout simplement.
[edtdd]--Message édité par Tetedeiench--[/edtdd]
Tetedeiench
Ce qui est bizarre, C que sur pas mal de forms de mon projet, ca passe ...
Sur d'autres, ca passe pas .
Capte pas :(
[SDF]Poire
il faut faire d'abord le close puis le free en vérifiant que C pas à nil....
Tetedeiench
nop, parce que la fonction au dessus s'execute avant le close ...
Les lignes freeandnil sont dans le "Onclose" de la Tform ...
[SDF]Poire
Tetedeiench a écrit a écrit :
Ce qui est étrange, C que si j'apelle ModifierBateau.close apres la fonction ci dessus, ca merde.
Si je ne l'apelle pas, et que je clique sur la croix de la fenetre apres la modif, ca marche...
Donc franchement, je sais pas :(
Et t'as pas le droit d'appeler ModifierBateau.close si tu a détruit ModifierBateau C pour ça que t'as une erreur mémoire
Tetedeiench
rufo a écrit a écrit :
et avec la méthode destroy de l'objet TForm? ça marche, non?
Exactement pareil :(
Tetedeiench
Pareil poire, cher poire ;)
Ouip, on a testé, sans succes... Idem avec Sender as Tobject :(
Ce qui est étrange, C que si j'apelle ModifierBateau.close apres la fonction ci dessus, ca merde.
Si je ne l'apelle pas, et que je clique sur la croix de la fenetre apres la modif, ca marche...
Donc franchement, je sais pas :(
rufo
et avec la méthode destroy de l'objet TForm? ça marche, non?