kiou9
Messages postés8Date d'inscriptionmercredi 3 mars 2004StatutMembreDernière intervention 6 avril 2007
-
18 août 2006 à 10:38
kiou9
Messages postés8Date d'inscriptionmercredi 3 mars 2004StatutMembreDernière intervention 6 avril 2007
-
18 août 2006 à 13:06
bonjour à tous
voilà mon soucis: je desire encoder dans mon checklistbox la liste des clients present dans un point de vente et y associer l'id de l'encaissement!
j'utilise donc la ligne de commande suivante dans une boucle pour creer chaque item :
valeur:=form1.rech_encaissement.FieldByName('id_encais').Value; CheckListBox1.AddItem(form1.client.FieldByName('nom').Value+form1.client.FieldByName('prenom').value,tobject(string(valeur)));
(cette commande fonctionne dans une autre partie de l'applic mais le tobject est un integer)
lorsque je demande par un showmessage le contenu de valeur celui-ci me donne "id_encais' correctement
showmessage('valeur:'+valeur);
par contre lorsque je demande par la meme formule le contenu de tobject des enregistrement selecionné
showmessage('object:'+string(CheckListBox1.Items.Objects[i]));
là c'est une catastrophe
j'ai un peu tout et n'importe quoi qui arrive!
généralement le premier item est correct les suivants me donne soit des signes cabalistiques soit un message enorme avec rien dedans voire meme une saturation memoire!
pour me faciliter les choses j'ai essayer de trouver un dbchecklistbox mais rien trouver à l'heure actuel... c'est pourquoi je fais appel à l'équipe
merci d'avance de toutes vos suggestions et de vorte aide
kiou9
Messages postés8Date d'inscriptionmercredi 3 mars 2004StatutMembreDernière intervention 6 avril 2007 18 août 2006 à 11:00
merci de ta reponse cirec mais
cela va me donner le nom et le prenom du client non? c'est la valeur de l'object qui m'interesse! mais je vais essayer quand meme
kiou9
Messages postés8Date d'inscriptionmercredi 3 mars 2004StatutMembreDernière intervention 6 avril 2007 18 août 2006 à 11:14
c'est bien ce que je pensais de cette manière on recupère la valeur de l'item et non la valeur de l'object
or c'est la valeur de l'object qui m'interresse car cet id doit servir plutard dans la procedure
merci quand meme de ta reponse
kiou9
Messages postés8Date d'inscriptionmercredi 3 mars 2004StatutMembreDernière intervention 6 avril 2007 18 août 2006 à 13:06
helas...
en fait j'expliquais que autre part dans mon application j'utilisais cette propriété avec un integer et que cela marchais extremement bien.
ma question est jstement pour l'executer avec un string. car a cet endroit mon id_caisse est composé de plusieurs element qui en font un systeme unique mais qui est un string!
je viens de faire une petite application qui illuste ce qui ne va pas et qui reprend grossomodo l'idée
deux formulaires:
form1
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,unit3, StdCtrls, CheckLst;
type
TForm2 = class(TForm)
Button1: TButton;
Button2: TButton;
CheckListBox1: TCheckListBox;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.Button1Click(Sender: TObject);
begin
form3.show;
end;
procedure TForm2.Button2Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to form2.CheckListBox1.Count-1 do
begin
if form2.CheckListBox1.Checked[i] then
showmessage('item:'+checklistbox1.items[i]+' object:'+string(CheckListBox1.Items.Objects[i]));
end;
end;
end.
form2
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm3 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form3: TForm3;
implementation
uses
unit2;
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);
begin
form2.CheckListBox1.AddItem(edit1.Text,tobject(string(edit2.Text)));
end;
end.
donc le form2.button1 permet d'ouvrir un formulaire pour remplir de checklist
le form2.button2 permet de lire les infos du checklistbox item+object... selectionne quelques items et remarque les phenomènes