Delphide Chart Üzerine Tıklama Problemi
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 33
- Kayıt: 09 Ağu 2010 01:28
Delphide Chart Üzerine Tıklama Problemi
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.
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
- chart_100x66.JPG (2.93 KiB) 4424 kere görüntülendi
-
- Üye
- Mesajlar: 33
- Kayıt: 09 Ağu 2010 01:28
Re: Delphide Chart Üzerine Tıklama Problemi
Olmucak bişe sordum gibi geliyor 

Re: Delphide Chart Üzerine Tıklama Problemi
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
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

Re: Delphide Chart Üzerine Tıklama Problemi
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

Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
-
- Üye
- Mesajlar: 33
- Kayıt: 09 Ağu 2010 01:28
Re: Delphide Chart Üzerine Tıklama Problemi
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.

-
- Üye
- Mesajlar: 33
- Kayıt: 09 Ağu 2010 01:28
Re: Delphide Chart Üzerine Tıklama Problemi
İ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.
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
Re: Delphide Chart Üzerine Tıklama Problemi
sorunu cozmek adina ne gibi yontemler denediniz cok merak ediyorum.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.
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.
-
- Üye
- Mesajlar: 33
- Kayıt: 09 Ağu 2010 01:28
Re: Delphide Chart Üzerine Tıklama Problemi
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.
Re: Delphide Chart Üzerine Tıklama Problemi
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.
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
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
Re: Delphide Chart Üzerine Tıklama Problemi
hangi kelimeleri arattiniz ?emrahozten yazdı:GOOGLEDA 1 haftadır arattırmadığım sözcük kalmadı.
Re: Delphide Chart Üzerine Tıklama Problemi
hocam amacin ne senin?sadettinpolat yazdı:hangi kelimeleri arattiniz ?emrahozten yazdı:GOOGLEDA 1 haftadır arattırmadığım sözcük kalmadı.
herhangi bir tartisma ortami olusturmak istemiyorum fakat böyle yaparak nereye varacagini düsünüyorsun?
kıdemsiz üye
-
- Üye
- Mesajlar: 33
- Kayıt: 09 Ağu 2010 01:28
Re: Delphide Chart Üzerine Tıklama Problemi
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.
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.
Re: Delphide Chart Üzerine Tıklama Problemi
Series1.GetCursorValueIndex yada Series1.Clicked şeklinde aratırsanız sonuca ulaşırsınız.
There's no place like 127.0.0.1
-
- Üye
- Mesajlar: 33
- Kayıt: 09 Ağu 2010 01:28
Re: Delphide Chart Üzerine Tıklama Problemi
o şekilde de sütunlarda gösterdiğim başlıkları tıklayınca gösteremiyorum. Sadece değer geliyo o kodlar ile 

Re: Delphide Chart Üzerine Tıklama Problemi
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.
- 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.

Dosya.TC çalışmadı ben de örnek projeyi ZippyShare'ye gönderdim. download linki : ChartOrnegi.rar
- 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.

- 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.

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