ListBox'tan ListBox'a Veri Aktarma

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.

ListBox'tan ListBox'a Veri Aktarma

İleti akrep_57 » 11 Kas 2007 05:44

Resim

Yapmak istediğim Resimde de görüldüğü gibi 2 adet listbox var elimizde birinci listbox'un içinde
bulunan bilgilerden istediğimi ListBox2' ye aktarmak istiyorum ve yine resimden de anlaşılacağı
gibi "EXELE AKTAR" butonuna tıkladığımda Bu seçilen Bilgiler'i DBGrid'ten çekerek exel'e çıkartmasını
yada CSV olarak çıkış yapmasını istiyorum bu konuda bilgisi olanlardan yardımcı olmalarını bekliyorum Şimdiden Teşekkürler....
akrep_57
Üye
 
İleti: 12
Kayıt: 01 Tem 2007 10:46
Konum: İstanbul

İleti ikutluay » 11 Kas 2007 06:16

düşüncen güzel ama benim önerim senin için daha basit gelecektir. checklistbox a bir döngü ile field ların yada grid sütun balıklarının açıklamalarını doldur. oradan checked olanları kaydettirirsin.

aşağıdaki kod ehlib gridimde seçtiğim kolonları ewkranda görünür kılan diğerlerini gizleyen od. sanırım dbgrid ilede çalışır.

Kod: Tümünü seç
  j := chklstCols.Items.Count - 1;
    For i := 0 To j Do
     Begin
      If chklstCols.Checked[i] Then
        DbGrid.Columns[i].Visible := True
      Else
        DbGrid.Columns[i].Visible := False;
     End;


chklistcols bir checklistbox tipli değişkendir. i ise normal tamsayı.

Kod: Tümünü seç
  For i :=0 to DbGrid.Columns.Count-1 Do
     chklstCols.Items.Add(DbGrid.Columns[i].Title.Caption);


yukardaki ise bir gridin sütun başlıklarını checliste dolduran kod. burdan ki tıklama sonuçlarına göre ilgili sütunları bir CSV dosyasına yazarsan hem open office hemde excel için çalışan bir export yazmış olacaksın.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
ikutluay
Üye
 
İleti: 2329
Kayıt: 03 Tem 2007 09:13

ListBox'tan ListBox'a Veri Aktarma

İleti akrep_57 » 13 Kas 2007 02:29

cevabın için teşekkür ederim ama senin demek istediğini ben tam olarak çözemedim benim yapmak istediğim şekilde yapacak olsak iş çokmu uzun sürer...eğer benim yaptığım gibi yapabilirsek ve bu konuda yardımcı olursanız sevinirim....
akrep_57
Üye
 
İleti: 12
Kayıt: 01 Tem 2007 10:46
Konum: İstanbul

İleti aslangeri » 13 Kas 2007 08:10

s.a.
listbox1 deki elemanı listbox2 ye atmak için önce listbox1deki eleman seçilir.
Kod: Tümünü seç
listbox2.add(listbox1.items[listbox1.itemindex]);

yukarı aşağı için
Kod: Tümünü seç
listbox2.moveby....

excele aktarma içinse.....
onun için biraz uğraşman gerekecek çünkü vt deki alan isimleri ile listboxdaki alan isimlerinin uyuştuğunu sanmıyorum.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
aslangeri
Moderator
 
İleti: 4307
Kayıt: 26 Arl 2003 04:19
Konum: Ankara

İleti ikutluay » 13 Kas 2007 09:30

bir checklist boxta alan isimleri gelecek... ordan tık koyduklarını index ve checked ile basitçe işleyeceksin...
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
ikutluay
Üye
 
İleti: 2329
Kayıt: 03 Tem 2007 09:13

İleti NeverFear » 15 Kas 2007 05:17

İlgili butonun onclick yordamına;
Kod: Tümünü seç
var    I: integer;
Dosya: string;
begin
  ListBox2.Clear;
  for I:= 0 to ListBox1.Items.Count - 1 do
  begin
     Dosya:= ListBox1.Items.Strings[I];
     ListBox2.Items.Add(Dosya);
  end;
end;
şeklinde bir kodlama yapabilirsin.
NeverFear
Üye
 
İleti: 69
Kayıt: 20 Tem 2004 08:41
Konum: İzmir

ListBox'tan ListBox'a Veri Aktarma

İleti akrep_57 » 17 Kas 2007 12:21

Merhaba
Kod: Tümünü seç
Listbox3.items.add(listbox2.items[listbox2.itemindex]);

olarak yaptığımda listbox'lar arası veri aktarımı oluyor ama seçilen veri değil tüm veriler aktarılıyor... hata nerede bakabilirmisiniz...
akrep_57
Üye
 
İleti: 12
Kayıt: 01 Tem 2007 10:46
Konum: İstanbul

İleti aslangeri » 17 Kas 2007 10:21

s.a.
gönderdiğin kodda bi hata yok.
muhtemelen döngünn içinde yazmışsındır :wink:
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
aslangeri
Moderator
 
İleti: 4307
Kayıt: 26 Arl 2003 04:19
Konum: Ankara

ListBox'tan ListBox'a Veri Aktarma

İleti akrep_57 » 17 Kas 2007 02:33

Yanlız Şöyle birşey var ben burada herhangi bir döngü kullanmadım direk olarak butonun içine yazdım kodu ve tıklama yapıldığı zamanda tüm içeriği aktardı... döngü olrak nasıl birşey yapmam gerekir... ve listbox içinde verileri aşağı yukarı taşıma olayını nasıl yapabilirim...
akrep_57
Üye
 
İleti: 12
Kayıt: 01 Tem 2007 10:46
Konum: İstanbul

İleti unicorn64 » 17 Kas 2007 04:01

bir yanlışınız olmalı.
çünkü
Kod: Tümünü seç
Listbox3.items.add(listbox2.items[listbox2.itemindex]);


bu kod adım adım şu işi yapar:

-listbox2 de seçili olanın index numarasını alır
-listbox2 de verilen indexli elemanı alır
-listbox3 e bu elemanı ekler


buna göre hepsini aktarması imkansız döngü yoksa...

tanımlamalarınızı kontrol edin. bu kodun sadece ilgili butonun onclick eventinde olduğundan emin olun. butonun onclick eventi için başka bir prosedürün atanmamış olduğundan da emin olun
Kullanıcı avatarı
unicorn64
Üye
 
İleti: 839
Kayıt: 04 Nis 2006 07:56
Konum: yine yeniden Ankara ^_^

ListBox'tan ListBox'a Veri Aktarma

İleti akrep_57 » 18 Kas 2007 09:44

Tamam şuan sorun yok aktarma işlemi oluyor yanlız şu konuda bir cevap alabilirsem çok daha iyiolacak sanırım bu işi yapmaya başladım ama benim bu seçtiğim bilgileri ben yaptığım sıralamaya göre exel'e yada csv çıkışı olarak alabilecekmiyim....delphi konusunda yeniyim kendimi geliştirmeye çalışıyorum ama bir yerlerde yarım almadan olmuyor... bu konu ile ilgili olarak online olarak yardım edebilecek olan var ise..

msn : ozcantemp@hotmail.com

konu ile ilgili olarak yardımlarınıza ihtiyacım var....
akrep_57
Üye
 
İleti: 12
Kayıt: 01 Tem 2007 10:46
Konum: İstanbul

İleti unicorn64 » 18 Kas 2007 11:36

standart dbgrid den direk olarak excel e aktarma şansın yk.
kendin biraz kasıp yapman lazım. aslında çok da zor değil forumda excel kullanma hakkında yazılan yazıları okuyarak takıldığın noktalarda da sorarak halledersin.

devepress->cxgrdi direk excel e aktarma işini sağlıyor ama ücretli mi free mi bilmiyorum.
Kullanıcı avatarı
unicorn64
Üye
 
İleti: 839
Kayıt: 04 Nis 2006 07:56
Konum: yine yeniden Ankara ^_^

İleti ikutluay » 19 Kas 2007 05:35

cxgrid paralı. ehlib te paralı.

bu arada basit bir döngü kurmak bu kadar zor gelmesin. sen bir adımı at gerisini getiririz sonuçta alan adlarını bilmiyoruz birşey bilmiyoruz. herşeyi devletten beklmeyin:)

yapacağın sadece uzantısı csv olan bir metin dosyası oluşturup alanı buraya yazdırmak excelde bunu direkt açar ki ? forumda bir sürü örnek var.

Kod: Tümünü seç
writeln(textdosya,'"',alandeğerimetin,'",',alandegerisayı,',');


metin ve sayıyı nasıl ayıracağın belli, sonunada virgül koydum sen noktalı virgülde koyabilrsin.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
ikutluay
Üye
 
İleti: 2329
Kayıt: 03 Tem 2007 09:13

Listbox to Csv or EXEL

İleti akrep_57 » 21 Kas 2007 01:33

Programın bir örneği ekte sunulmuştur buna göre yardımcı olabilirmisiniz......

http://dosya.arsiv.gen.tr/file.php?file=c826816b58b93b9c023462b11a1b894b
akrep_57
Üye
 
İleti: 12
Kayıt: 01 Tem 2007 10:46
Konum: İstanbul


Programlama

Kimler çevrimiçi

Bu forumu görüntüleyenler: Bing [Bot], Google [Bot] ve 3 misafir