Delphide Chart Üzerine Tıklama Problemi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
emrahozten
Üye
Mesajlar: 33
Kayıt: 09 Ağu 2010 01:28

Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen emrahozten »

Arkadaşlar Merhaba,
Chart üzerine verileri değerleri ile yerleştirebiliyorum. Fakat şöyle bir şey yapmak istiyorum, mümkün müdür acaba? Değer alan sütunun üzerine tıklandığında db' den o veriye ait detaylar gelsin istiyorum ama sütun üzerine tıklandığında veri tabanından nasıl veri alabileceğim konusunda bir şey yapamadım. Yardımcı olursanız sevinirim.
Dosya ekleri
grafik
grafik
chart_100x66.JPG (2.93 KiB) 4423 kere görüntülendi
emrahozten
Üye
Mesajlar: 33
Kayıt: 09 Ağu 2010 01:28

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen emrahozten »

Olmucak bişe sordum gibi geliyor :)
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen mrmarman »

Hiçbir uçak havada kalmamışsa olmayacak diye birşey de yoktur.

sadece vakit meselesi. Uygun zamanda yazarım ama uygulayabilir misin bilmem. Asıl mesele bu.

hiç olmadı chart'ın resmini çeker bu resim üzerinde tıklanan yerin rengini alır yine yaparsın. İlla ki de her şeyin property'sini method'unu ararsak evin yolunu bulamayız değil mi :lol:
Resim
Resim ....Resim
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen xozcanx »

mrmarman yazdı:İlla ki de her şeyin property'sini method'unu ararsak evin yolunu bulamayız değil mi

Hocam bakış açınız gerçekten çok iyi Resim
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
emrahozten
Üye
Mesajlar: 33
Kayıt: 09 Ağu 2010 01:28

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen emrahozten »

Hocam cevap çok güzel, ne diceğimi bilemedim valla :) İnan senin müsait vaktinin olması için dua edicem. Sen bi yol göster bana da gerisini bi çaresini bakarız inşallah. Teşekkür ederim.
emrahozten
Üye
Mesajlar: 33
Kayıt: 09 Ağu 2010 01:28

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen emrahozten »

İnşallah derdimi düzgün şekilde anlatabilmişimdir. Grafikte mesela 2 sütun oluştu, o oluşan iki sütündan birine tıkladığımızda bize sütunun adını çağaracak.
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen sadettinpolat »

emrahozten yazdı:İnşallah derdimi düzgün şekilde anlatabilmişimdir. Grafikte mesela 2 sütun oluştu, o oluşan iki sütündan birine tıkladığımızda bize sütunun adını çağaracak.
sorunu cozmek adina ne gibi yontemler denediniz cok merak ediyorum.

tchart bilesenlerini incelediniz mi ?
yardim belgelerini okudunuz mu ?
yukaridakileri yapmadiysaniz bile google da iki uc kelime girerek arama yaptiniz mi ?
yoksa birilerinin hazir bir kod yazmasini mi bekliyorsunuz ?

google ile bu sorunun cozumu 5 saniye.
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
emrahozten
Üye
Mesajlar: 33
Kayıt: 09 Ağu 2010 01:28

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen emrahozten »

GOOGLEDA 1 haftadır arattırmadığım sözcük kalmadı. İnan araştırma yapmadan hazıra konanlardan değilim usta. tchartın eventslerinin tümünü tek tek denedim belki deneme yanılma yaparak bulabilirim diye, o da olmadı. Artık son çare buraya yazdım. Belki ufacık bi cümle senin aklına gelip googleda aratınca sen bulmuş olabilirsin ama benim aklıma gelmedi maalesef. Bi yerlerden bişey bulduysan linkini vererek yardımcı olabilirsin, hazır kod istemiyorum.
ikra
Üye
Mesajlar: 901
Kayıt: 28 Nis 2005 01:26
Konum: Simdilik Topragin Üstü

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen ikra »

TChart bileseninin ic yapisini incelemedim fakat yöntem olarak söyle bir sey aklima geldi.

TChart'in ciziminin yapildigi Paint prosedürünün icerisinde cizilen sütunlarin koordinatlarini alip Rect'e cevirip daha sonra onMouseClick eventi ekleyip Point'in Rect icerisinde olup olmadiginin kontrolünü yapar, daha sonra kendi eventimi tetiklerim.
Bu sayede hem hangi sütunun üzerine tiklandigini bulmus, hem de o sütuna ait olan eventi tetikletmis olurum.
kıdemsiz üye
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen sadettinpolat »

emrahozten yazdı:GOOGLEDA 1 haftadır arattırmadığım sözcük kalmadı.
hangi kelimeleri arattiniz ?
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
ikra
Üye
Mesajlar: 901
Kayıt: 28 Nis 2005 01:26
Konum: Simdilik Topragin Üstü

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen ikra »

sadettinpolat yazdı:
emrahozten yazdı:GOOGLEDA 1 haftadır arattırmadığım sözcük kalmadı.
hangi kelimeleri arattiniz ?
hocam amacin ne senin?
herhangi bir tartisma ortami olusturmak istemiyorum fakat böyle yaparak nereye varacagini düsünüyorsun?
kıdemsiz üye
emrahozten
Üye
Mesajlar: 33
Kayıt: 09 Ağu 2010 01:28

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen emrahozten »

ikra teşekkür ederim yorumun için, dediğin yolla uğraşmaya başlayacağım şimdi. Fakat ben daha basit bir yol var mıdır diyorum. Çünkü mantık olarak baktığımızda çok zor gibi durmuyor eventinde rahatça tek kod yazıp, sütun üzerine tıklandığında sutün başlığını verir diye düşündüm ama baya zormuş. Google arattığım kelimeler ise;

delphide chart üzerine tıklandığında;
delphide sütuna tıklandığında;
delphide chart sütun adı alma;
delphide onclickseries;

ama maalesef googlde bir şey bulamadım.
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen SimaWB »

Series1.GetCursorValueIndex yada Series1.Clicked şeklinde aratırsanız sonuca ulaşırsınız.
There's no place like 127.0.0.1
emrahozten
Üye
Mesajlar: 33
Kayıt: 09 Ağu 2010 01:28

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen emrahozten »

o şekilde de sütunlarda gösterdiğim başlıkları tıklayınca gösteremiyorum. Sadece değer geliyo o kodlar ile :(
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Delphide Chart Üzerine Tıklama Problemi

Mesaj gönderen mrmarman »

Merhaba...

- Cevaba bakınca kendi kendine "bu kadar basit miymiş?" deme sakın, bu senin araştırma yapmış ol veya olma kafa yormadığını gösteriyor.

- Bulduğun sonuçlarla ilgili bir test projesi oluşturup bunun üzerinden bize sorularını iletmeni bekledim ama ben de halen bunu göremedim. Yani anlamı buradan hazır proje örneği bekledin. :idea:

- Ayrıca bir proje geliştirirken tek boyutlu kalmayın. iki hatta ikiden fazla boyutta düşünmeye gayret edin. Önceki mesajımda bunun altını çizmeye çalıştım. Ne demek birden fazla boyut. Delphi ile nesnel programlamaya giriş yapıyorsunuz. Artık sebep - sonuç ilişkisini bir adım da ileri taşıyıp, nesneler arasındaki etkileşimi değerlendirmeye çalışın. A nesnesinde bir değer gösteriliyorsa, bu değer B nesnesinden gelmiyor mu ? İllaki A nesnesine neden odaklanasınız ki ?!

- Sorularınızı kodlar ile neden yazma alışkanlığı edinemiyoruz bunu anlayamıyorum. Şimdi ben sana şunu şu şekilde yap diye örnek kod verecek olsam, sen de kendi kodlarıma uyarlayamadım deyip döneceksin ve yine bana yaptıracaksın.

- Şunu bile yazmaya gerek duymamışsın : Verilerini bir veritabanından DBChart ile mi direkt mi grafiğe yansıtıyorsunuz yoksa bazı hesaplamalar sonucu olarak statik bir TChart nesnesinde mi gösteriyorsunuz. Bu şunun için önemli;

(1) Eğer veritabanından TDBChart ile kullanıyorsanız, elde edeceğiniz index ile veritabanındaki sütunların ve kayıtların sıralamasını değerlendiremeye alarak ilgili sütuna ait kaydın verisi zaten elinizde iken neye ve ne için chart üzerinden değer okumaya ihtiyacınız olduğunu anlamakta güçlük çekiyorum.

(2) Eğer veritabanındaki veriler ışığında kendi hazırladığınız bir procedure ile bu verileri Standart bir TChart nesnesine yansıtıyorsanız o zaman başlıkları bir listede tutup yine aynı şekilde bu başlıkları ve dolayısı ile verinin ne olduğuna odaklanacaksınız demektir. Buna da bir engel yok zaten.

- Aşağıda bağlantılı iki örnek vericem. Bir buttona basınca dinamik olarak TChart hazırlanacak. Sonra siz hangi sütuna veya o sütuna ait satırda ifade edilen referans üzerine tıklarsanız size o sütun veya referansın index nolsunu geri verecek.

Resim

Kod: Tümünü seç

procedure TForm1.BitBtn1Click(Sender: TObject);
Var
  Seri : TBarSeries;
begin
  Seri := TBarSeries.Create( Chart1 );
   Seri.Add(10, 'A-Değer', clYellow);
   Seri.Add(20, 'B-Değer', clYellow);
   Seri.Add(30, 'C-Değer', clYellow);
   Seri.Add(40, 'D-Değer', clYellow);
   Seri.Add(50, 'E-Değer', clYellow);
  Chart1.SeriesList.Clear;
  Chart1.AddSeries( Seri );

  Chart1.OnClickSeries := Chart1ClickSeries;
  Chart1.OnMouseUp     := Chart1MouseUp;
end;

procedure TForm1.Chart1ClickSeries(Sender: TCustomChart; Series: TChartSeries;
  ValueIndex: Integer; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  ShowMessage( IntToStr(ValueIndex) + ' nolu Sütuna tıkladınız...' );
end;

procedure TForm1.Chart1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
Var
  Pos : TPoint;
  Part: TChartClickedPart;
begin
  Pos.X := X;
  Pos.Y := Y;
  Chart1.CalcClickedPart( Pos, Part );
  if Part.PointIndex >= 0
  then ShowMessage( IntToStr( Part.PointIndex ) + ' nolu Bar tıklandı...' );
end;

Dosya.TC çalışmadı ben de örnek projeyi ZippyShare'ye gönderdim. download linki : ChartOrnegi.rar
Resim
Resim ....Resim
Cevapla