Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2473 connectés 

  FORUM HardWare.fr
  Programmation

  [Borland/C++]Pkoi ca marche pas ???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Borland/C++]Pkoi ca marche pas ???

n°89289
aurel
Fraggueur en liberté
Posté le 15-01-2002 à 10:15:13  profilanswer
 

G besoin de faire un TtreeView dynamiquement, dans la méthode ou on arrive qd on clic sur un de mes bouton, g mis ca:
        TTreeNode* LCurTreeNode;
        TreeView1->Items->Insert(LCurTreeNode, "test" );
J'ai écrit QUE ca comme code, c du test.
 
Qd je run le projet en DEbug, il me sort la fenetre de l'étatt du CPU ss arret.
et en release "AccessViolation machin"
 
g oublié koi ?

mood
Publicité
Posté le 15-01-2002 à 10:15:13  profilanswer
 

n°89290
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:17:02  profilanswer
 

bhen peut-être qu'il manque un bout entre tes deux lignes:
LCurTreeNode = new TTreeNode;
:D
ajouter un pointeur pointant vers n'importe quoi, le Treeview il doit pas être trop d'accord ;)


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89293
thecoin
Chasseur de chasseur de canard
Posté le 15-01-2002 à 10:25:37  profilanswer
 

oublie pas de faire le delete aussi :D


---------------
Si tu regardes ce que le canard mange, tu ne mangeras pas de canard.
n°89294
aurel
Fraggueur en liberté
Posté le 15-01-2002 à 10:26:28  profilanswer
 

Et dire qu'il ya encore 4 moi je faisait du java! :cry:
 
Merci comme meme

n°89295
aurel
Fraggueur en liberté
Posté le 15-01-2002 à 10:30:31  profilanswer
 

Ouais ca macrhe ca :
 
      TTreeNodes* LTreeNodes;
        LTreeNodes = new TTreeNodes(TreeView1);
        TTreeNode* LCurTreeNode;
        LCurTreeNode = new TTreeNode(LTreeNodes);
        TreeView1->Items->Insert(LCurTreeNode, "test" );
 
De la balle
 
Vous connaissez pas un newsgroup fr sur cppbuilder ?
trouve po :(

n°89296
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:31:34  profilanswer
 

thecoin a écrit a écrit :

oublie pas de faire le delete aussi :D  




 
:heink:
tu dis ça par habitude du C++ ou pas habitude des VCL de Borland ?
parce qu'en Delphi dans ce genre de trucs faut pas supprimer l'objet, il appartient au treeview et c'est le treeview qui le supprimera. Je suppose que dans C++Builder c'est pareil puisque ce sont les mêmes librairies.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89298
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:32:52  profilanswer
 

Aurel a écrit a écrit :

Ouais ca macrhe ca :
 
      TTreeNodes* LTreeNodes;
        LTreeNodes = new TTreeNodes(TreeView1);
        TTreeNode* LCurTreeNode;
        LCurTreeNode = new TTreeNode(LTreeNodes);
        TreeView1->Items->Insert(LCurTreeNode, "test" );
 
De la balle




 
il sert à rien ton LTreeNodes ici:

Code :
  1. TTreeNode* LCurTreeNode;
  2.    LCurTreeNode = new TTreeNode(TreeView1.Items);
  3.    TreeView1->Items->Insert(LCurTreeNode, "test" );


 

Aurel a écrit a écrit :

 
Vous connaissez pas un newsgroup fr sur cppbuilder ?
trouve po :(  




 
bah y a ce forum justement :D
puis la majorité de ce qui est bon pour Delphi est bon pour C++Builder. Et des newsgroups ou forums Delphi y en a pas mal je pense.

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89299
thecoin
Chasseur de chasseur de canard
Posté le 15-01-2002 à 10:34:13  profilanswer
 

antp a écrit a écrit :

 
 
:heink:
tu dis ça par habitude du C++ ou pas habitude des VCL de Borland ?
parce qu'en Delphi dans ce genre de trucs faut pas supprimer l'objet, il appartient au treeview et c'est le treeview qui le supprimera. Je suppose que dans C++Builder c'est pareil puisque ce sont les mêmes librairies.  




 
 :non: sous c++builder, tout les objets que TU crès [faute inside] TU dois les detruire toi meme.


---------------
Si tu regardes ce que le canard mange, tu ne mangeras pas de canard.
n°89302
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:36:29  profilanswer
 

possible, faut voir si ça plante.
Mais dans certains cas si tu créées des composants appartenant à une form et que tu les supprimes après, ça crashe quand tu détruis la form pcq elle essaie de détruire les dits composants.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89303
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:38:54  profilanswer
 

correction: ce "insert" me paraissait bizarre, en effet.
le TTreeNode passé en paramètre c'est celui qui précède celui qu'on ajoute.
Donc le code est foireux.
la méthode insert renvoie un pointeur vers le TTreeNode qui a été ajouté.
Je me disais bien qu'il fallait pas en créer "manuellement" et encore moins en supprimer après...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
mood
Publicité
Posté le 15-01-2002 à 10:38:54  profilanswer
 

n°89305
aurel
Fraggueur en liberté
Posté le 15-01-2002 à 10:42:02  profilanswer
 

antp a écrit a écrit :

 
 
bah y a ce forum justement :D
puis la majorité de ce qui est bon pour Delphi est bon pour C++Builder. Et des newsgroups ou forums Delphi y en a pas mal je pense.  
 
 




 
Tu construis un TTreeNode en fonction de l'Item d'un TTreeView ???
comprends pas la ...

n°89307
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:43:52  profilanswer
 

Un autre exemple:
 

Code :
  1. TTreeNode *CurNode, *NewNode1, *NewNode2;
  2. CurNode = TreeView1->Items->Add(NULL, "racine 1" );
  3. NewNode1 = TreeView1->Items->Add(CurNode, "racine 2" );
  4. NewNode2 = TreeView1->Items->AddChild(CurNode, "enfant de racine 1" );

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89308
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:44:46  profilanswer
 

Aurel a écrit a écrit :

 
 
Tu construis un TTreeNode en fonction de l'Item d'un TTreeView ???
comprends pas la ...  




 
TTreeView->Items = TTreeNodes du TTreeView
donc les TTreeNode créés appartiennent à ce TTreeNodes là


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89311
aurel
Fraggueur en liberté
Posté le 15-01-2002 à 10:48:46  profilanswer
 

Merci Merci.
Tu vois antp, c ce genre de d'exemple qui manque dans la doc de Cppbuilder et c de ca que je me plaignais hier.
 
A moins que j'ai mal cherché :??:

n°89314
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 10:51:51  profilanswer
 

bhen t'as mal cherché pcq pour me souvenir comment ça marchait j'ai regardé l'exemple du "Add" du TTreeNodes dans la doc :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89315
aurel
Fraggueur en liberté
Posté le 15-01-2002 à 10:51:54  profilanswer
 

et pkoi lorsque je mets tt ce code en commentaire et que je recompile en RELEASE, il me sort la fenetre de l'état du CPU que j'arrive pas a quitter en lancant l'appli???

n°89387
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 12:15:50  profilanswer
 

ça foire quand tu mets quel code ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°89390
aurel
Fraggueur en liberté
Posté le 15-01-2002 à 12:22:54  profilanswer
 

antp a écrit a écrit :

ça foire quand tu mets quel code ?  




Bon en fait g pas encore trop compris comment ca macrhe cppbuilder.
En release, DESFOIS, avec n'importe quel code, je fais F7
ca lance la fenetre d'état du cpu, je kill cette fenetre, je refais F7 et ca lance mon aplli
moi y'en a pas comprendre !!!!!

n°89401
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-01-2002 à 12:42:07  profilanswer
 

heu c'est normal tout ça :D
F7/F8 c'est pour l'exécution en pas à pas en suivant le code C++
En mode Debug donc.
En mode release dans le Exe il n'inclus pas toutes les infos pour le debuggage, il ne sait donc pas à quel ligne de ton source correspond l'endroit où il est, donc il t'affiche le code machine, la seule chose qu'il a.
C'est F9 pour un run normal.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Borland/C++]Pkoi ca marche pas ???

 

Sujets relatifs
[Borland/C++builder] Doc !!!![Java] Newbie : applet marche dans JBuilder mais pas dans IE...
[BORLAND] Ils ont foiré dans leur licence!pq ce forum ne marche plus qu une fois sur deux ces 2 dernier jour?
[PHP] Un compteur qui marche pas[Builder c++] Comment marche cette p... de fonction locate ???
[BORLAND C] findfirst() problemeDBI Perl Module >>> "ppm install" ne marche pas
[PHP] Setcookie marche chez free?problèmes avec borland c++
Plus de sujets relatifs à : [Borland/C++]Pkoi ca marche pas ???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR