Öncelikle Merhabalar...Yapmak istediğim Örnek;1. formdaki label8 nesnesinin değerini 2.formdaki başka bir label nesnesine aktarmak yada public bir değişkene aktarmak ve bu değeri kullanmak.1.formun olayına şu şekilde kod yazdım.form2.Label14.Caption:=form1.Label11.Caption; form 2nin label14 ne geliyor ama bu değeri form2 nin başka yerinde kullanmak istediğmde olmuyor.Yani değer gözüküyor ama kullanamıyorum.
Label nesnesinin alt özelliklerinden olan caption ( String ) değerini normalde string olarak kullabilirsin.
Eğer nesne değerini sayısal olarak işlem yapmak istiyorsan inttostr veya floattostr fonksiyonlarını kullanman gerekli.
Bir de her nesne sonuç olarak kendi parent olan forma bağımlıdır ortak alanlarda kendine dair değişkenleri bu işlemler için kullanabilirsin.
İlginiz için teşekkürler ama ya ben anlayamadım ya da olmuyo.Değeri görüyorum ama işleme sokamıyorum.Yani bir şarta tabi tutamıyorum.Ben direk kodları yazıyım yardımcı olabilirseniz sevinirim.
procedure TForm2.ListBox1Click(Sender: TObject);
begin
label10.Caption:=ListBox1.Items.Strings
[ListBox1.ItemIndex];
ADOquery1.Close;
ADOquery1.SQL.Clear;
ADOquery1.SQL.Add('select salon_no,id from seans where seans_saati='+QuotedStr(ListBox1.Items.Strings
[ListBox1.ItemIndex]));
ADOquery1.Open; ADOquery1.First;
Label8.Caption:= ADOquery1.Fields[0].asstring;
Label11.Caption:= ADOquery1.Fields[1].asstring; // Bu kısım benim form2 deki değerim
end;
Burası form3
ADOquery1.Close;
ADOquery1.SQL.Clear;
ADOquery1.SQL.Add('select koltuk_no from musteriler where seans_id='+QuotedStr('burası gelecek değeri kullanmak istediğim yer'));
ADOquery1.Open;
ADOquery1.First;
while not ADOquery1.Eof do begin
ListBox1.Items.Add(ADOquery1.Fields[0].asstring);
ADOquery1.Next;
end;
Yapmak istediğim şu form2deki kodda tablodan seans_id geliyo
form3 e geçtiğmde seans id ye göre koltuk_nolarını listboxa eklemek istiyorum.
QuotedStr('1') gibi bir ifade yazdığımda seans_id 1 olan koltuklar listeleniyor.
ama bu değeri diğer taraftan çekip yazdığımda olmuyo.
bir memo nesnesine QuotedStr(ListBox1.Items.Strings
[ListBox1.ItemIndex]) ile QuotedStr('1') ifadesini ayrı satırlar olarak ekle muhtemelen farklılılar olacaktır.
tabi listbox nesnesi içerisinde 1,2,3,4,5.. şeklinde bir listeyi tuttuğunu varsayıyorum.
diğer kısım ise sql satırını çalıştırmadan önce debug point ile oluşturduğun sql sorgusunu kullandığın database sql konsolunda çalıştırmayı denemeni tavsiye ederim
Öncelikle Merhabalar...Yapmak istediğim Örnek;1. formdaki label8 nesnesinin değerini 2.formdaki başka bir label nesnesine aktarmak yada public bir değişkene aktarmak ve bu değeri kullanmak.1.formun olayına şu şekilde kod yazdım.form2.Label14.Caption:=form1.Label11.Caption; form 2nin label14 ne geliyor ama bu değeri form2 nin başka yerinde kullanmak istediğmde olmuyor.Yani değer gözüküyor ama kullanamıyorum.
Hocam 2. mesajımda da yazıyo tekrar yazıyım istediğm şeyi
procedure TForm2.ListBox1Click(Sender: TObject); begin label10.Caption:=ListBox1.Items.Strings
[ListBox1.ItemIndex]; ADOquery1.Close; ADOquery1.SQL.Clear; ADOquery1.SQL.Add('select salon_no,id from seans where seans_saati='+QuotedStr(ListBox1.Items.Strings
[ListBox1.ItemIndex])); ADOquery1.Open; ADOquery1.First; Label8.Caption:= ADOquery1.Fields[0].asstring; Label11.Caption:= ADOquery1.Fields[1].asstring; // Bu kısım benim form2 deki değerim end;
Burası form3 ADOquery1.Close; ADOquery1.SQL.Clear; ADOquery1.SQL.Add('select koltuk_no from musteriler where seans_id='+QuotedStr('burası gelecek değeri kullanmak istediğim yer')); ADOquery1.Open; ADOquery1.First; while not ADOquery1.Eof do begin ListBox1.Items.Add(ADOquery1.Fields[0].asstring); ADOquery1.Next; end;
Yapmak istediğim şu form2deki kodda tablodan seans_id geliyo form3 e geçtiğmde seans id ye göre koltuk_nolarını listboxa eklemek istiyorum. QuotedStr('1') gibi bir ifade yazdığımda seans_id 1 olan koltuklar listeleniyor. ama bu değeri diğer taraftan çekip yazdığımda olmuyo.