Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
ComboBox1 Yan Yana Listeleme
#1
Arkadaşlar Merhaba; Sağlıklı günleriniz olsun.
Şunu yapmak istiyorum mümkün mü acaba?

ComboBox1 de veri tabanındaki iki alanı listeliyorum ama Items[0] ve Items[1] olarak alta alta geliyor ben yan yana nasıl yapabilirim?

  Plasiyer.Active:=True;
  Combobox1.text := Combobox1.items[0];
 Combobox1.text := Combobox1.items[1];
        while Not Plasiyer.Eof do
        begin
          ComboBox1.Items.Add (Plasiyer['PLASIYER_KODU']);
          ComboBox1.Items.Add (Plasiyer['PLASIYER_ACIKLAMA']);
          Plasiyer.Next;
        end;
Cevapla
#2
(20-11-2020, Saat: 13:36)OZCANK Adlı Kullanıcıdan Alıntı: Arkadaşlar Merhaba; Sağlıklı günleriniz olsun.
Şunu yapmak istiyorum mümkün mü acaba?

ComboBox1 de veri tabanındaki iki alanı listeliyorum ama Items[0] ve Items[1] olarak alta alta geliyor ben yan yana nasıl yapabilirim?

  Plasiyer.Active:=True;
  Combobox1.text := Combobox1.items[0];
 Combobox1.text := Combobox1.items[1];
        while Not Plasiyer.Eof do
        begin
         [ars=delphi] ComboBox1.Items.Add (Plasiyer['PLASIYER_KODU']);

          ComboBox1.Items.Add (Plasiyer['PLASIYER_ACIKLAMA']);
          Plasiyer.Next;
        end;
[/ars]
 ComboBox1.Items.Add (Plasiyer['PLASIYER_KODU'] +'     '+ Plasiyer['PLASIYER_ACIKLAMA']);

    
Denediniz mi?
Genelde ingilizce klavye ile ileti gönderiyorum.
Cevapla
#3
(20-11-2020, Saat: 13:59)41linea41 Adlı Kullanıcıdan Alıntı:
(20-11-2020, Saat: 13:36)OZCANK Adlı Kullanıcıdan Alıntı: Arkadaşlar Merhaba; Sağlıklı günleriniz olsun.
Şunu yapmak istiyorum mümkün mü acaba?

ComboBox1 de veri tabanındaki iki alanı listeliyorum ama Items[0] ve Items[1] olarak alta alta geliyor ben yan yana nasıl yapabilirim?

  Plasiyer.Active:=True;
  Combobox1.text := Combobox1.items[0];
 Combobox1.text := Combobox1.items[1];
        while Not Plasiyer.Eof do
        begin
         [ars=delphi] ComboBox1.Items.Add (Plasiyer['PLASIYER_KODU']);

          ComboBox1.Items.Add (Plasiyer['PLASIYER_ACIKLAMA']);
          Plasiyer.Next;
        end;
[/ars]
 ComboBox1.Items.Add (Plasiyer['PLASIYER_KODU'] +'     '+ Plasiyer['PLASIYER_ACIKLAMA']);

    
Denediniz mi?

Denedim kardeşim arama yaptırdığım için Text alanına sadece PLASIYER_KODU gelmesi gerekiyor.
Cevapla
#4
(20-11-2020, Saat: 14:05)OZCANK Adlı Kullanıcıdan Alıntı:
(20-11-2020, Saat: 13:59)41linea41 Adlı Kullanıcıdan Alıntı:
 ComboBox1.Items.Add (Plasiyer['PLASIYER_KODU'] +'     '+ Plasiyer['PLASIYER_ACIKLAMA']);

    
Denediniz mi?

Denedim kardeşim arama yaptırdığım için Text alanına sadece PLASIYER_KODU gelmesi gerekiyor.

iki boyutlu bir array tanımlayıp ikullanıcı combobox sectikten sonra array içinde aradığınız/sakladığınız veriye ulaşmak bi çözüm olabilir.
Yada onchange olayına mudahale etmelısınız.
Genelde ingilizce klavye ile ileti gönderiyorum.
Cevapla
#5
Merhaba.

* Record tipleri size çözüm olur ama hiç uğraşmayayım derseniz, ComboBox'a kardeş olarak bir tane TListBox koyun forma. ListBox'un da Visible özelliğini FALSE yapın hiç görünmesin. 

* ComboBox'u temizlerken, ListBox'u da temizleyin. 
* ComboBox'a yeni "PLASIYER_KODU" eklerken aynı yerde ListBox'a da "PLASIYER_ACIKLAMA" ekleyin.

* PLASIYER_ACIKLAMA lazım olan yerlerde ComboBox'un ItemIndex değerindeki ListBox Item'ini kullanın.

Örneğin :  
ShowMessage(  ListBox1.Items[ ComboBox1.ItemIndex ] );
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#6
(20-11-2020, Saat: 14:18)mrmarman Adlı Kullanıcıdan Alıntı: Merhaba.

* Record tipleri size çözüm olur ama hiç uğraşmayayım derseniz, ComboBox'a kardeş olarak bir tane TListBox koyun forma. ListBox'un da Visible özelliğini FALSE yapın hiç görünmesin. 

* ComboBox'u temizlerken, ListBox'u da temizleyin. 
* ComboBox'a yeni "PLASIYER_KODU" eklerken aynı yerde ListBox'a da "PLASIYER_ACIKLAMA" ekleyin.

* PLASIYER_ACIKLAMA lazım olan yerlerde ComboBox'un ItemIndex değerindeki ListBox Item'ini kullanın.

Örneğin :  
ShowMessage(  ListBox1.Items[ ComboBox1.ItemIndex ] );

Aramayı da aynı şekilde düşündüm.
Üstadım şu şekilde birşey yapmaya çalıştım ama yapamadım;

               'WHERE TBLCARIPLASIYER.PLASIYER_KODU''+''TBLCARIPLASIYER.PLASIYER_ACIKLAMA='+#39+''+ComboBox1.Text+''+#39+' OR '+#39+''+ComboBox1.Text+''+#39+'='' '' '+

 
Cevapla
#7
ListBox'a alarak yaptıysanız aşağıdaki şekilde deneyebiirsiniz.

   ' WHERE TBLCARIPLASIYER.PLASIYER_KODU = ' +QuotedStr( ComboBox1.Text ) + ' AND TBLCARIPLASIYER.PLASIYER_ACIKLAMA = ' + QuotedStr( ListBox1.Items( ComboBox1.ItemIndex ) ) 

Bir ekleme daha yapayım, eğer ComboBox'a iki alanı birleşik almışsanız o zaman aynı formatta sorabilirsiniz.

Örnek :
ComboBox'a eklemeyi aşağıdaki şekilde yapmışsanız
ComboBox1.Items.Add( aQuery.FieldbyName('PLASIYER_KODU').AsString + ' - ' + aQuery.FieldbyName('PLASIYER_ACIKLAMA').AsString );

sorgulama aşamasında da 

' WHERE PLASIYER_KODU + '' - '' +  PLASIYER_ACIKLAMA' = ' + QuotedStr( ComboBox1.Text ) 
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#8
(20-11-2020, Saat: 14:45)mrmarman Adlı Kullanıcıdan Alıntı: ListBox'a alarak yaptıysanız aşağıdaki şekilde deneyebiirsiniz.

   ' WHERE TBLCARIPLASIYER.PLASIYER_KODU = ' +QuotedStr( ComboBox1.Text ) + ' AND TBLCARIPLASIYER.PLASIYER_ACIKLAMA = ' + QuotedStr( ListBox1.Items( ComboBox1.ItemIndex ) ) 

Bir ekleme daha yapayım, eğer ComboBox'a iki alanı birleşik almışsanız o zaman aynı formatta sorabilirsiniz.

Örnek :
ComboBox'a eklemeyi aşağıdaki şekilde yapmışsanız
ComboBox1.Items.Add( aQuery.FieldbyName('PLASIYER_KODU').AsString + ' - ' + aQuery.FieldbyName('PLASIYER_ACIKLAMA').AsString );

sorgulama aşamasında da 

' WHERE PLASIYER_KODU + '' - '' +  PLASIYER_ACIKLAMA' = ' + QuotedStr( ComboBox1.Text ) 

Üstadım şu şekilde çözdüm; Bir tane Edit1 koydum gizledim. 
Burası arama yeri;
'WHERE TBLCARIPLASIYER.PLASIYER_KODU='+#39+''+Edit1.Text+''+#39+' OR '+#39+''+Edit1.Text+''+#39+'='' '' '+
bu şekilde de istediğim kodu aldım.
Var
            PlsKodAl:AnsiString;
Begin
           PlsKodAl:=ComboBox1.Text;
           SetLength(PlsKodAl,5);
Edit1.Text:=PlsKodAl;
Cevapla
#9
@OZCANK Önerim ListBox nesnesinin AddObject konusunu bir araştırın
Listbox görselinde 1 satır şeklinde veri gösterip arka planda istediğiniz formatta bir sınıfı istediğiniz şekilde tutup tıklandığında buna erişip kullanabilirsiniz
mesela Listboxta Ad Soyad olsun tıklanınca bu ad soyadlı kişinin ID, yaşı, adresi, ..... gbi tüm bilgilere ulaşabilirsiniz
Bu olaydaki kilit ListBox sınıfının AddObject özelliği
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#10
Bu şekilde hata veriyor String Sayıya çeviremedim.

           
 DBComboBox1.Items.Add(Plasiyer['PLASIYER_KODU'] +'        '+ Plasiyer(IntToStr(StrToInt(['PLASIYER_ACIKLAMA']))));
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  database dosyalarını listeleme akuyumcu63 3 214 28-05-2021, Saat: 11:00
Son Yorum: akuyumcu63
  İziBiz eFatura Listeleme MuhammedYasir 7 533 12-04-2021, Saat: 10:26
Son Yorum: mkysoft
  Browser listeleme Altıner 6 947 14-12-2020, Saat: 12:01
Son Yorum: Altıner
  Veritabanı Dosyasındaki Dataları Listeleme bnyamin86 6 1.736 17-08-2020, Saat: 18:35
Son Yorum: bnyamin86
  Listeleme çoklu ve random ekank 3 1.588 21-07-2020, Saat: 14:54
Son Yorum: hi_selamlar



Konuyu Okuyanlar: 1 Ziyaretçi