DBGridin içeriğinde kayıt görüntülenmiyorsa...
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
DBGridin içeriğinde kayıt görüntülenmiyorsa...
Meraba Arkadaşlar;
DBGrid içeriğinde kayıtlar görüntülenmiyorken, formun üzerinde bulunan Sil ve Düzenle Butonlarım kayıt varmış gibi çalışmaya devam ediyor.DBGridde kayıt görüntülenmiyorsa o düğmeleri pasif yapmak istiyorum. Satır seçili değilse Sil butonu ve Düzenle butonu çalışmasın istiyorum ya da uyarı versinler.
Yardımlarınızı bekliyorum arkadaşlar. Şimdiden Teşekkür Ederim.
DBGrid içeriğinde kayıtlar görüntülenmiyorken, formun üzerinde bulunan Sil ve Düzenle Butonlarım kayıt varmış gibi çalışmaya devam ediyor.DBGridde kayıt görüntülenmiyorsa o düğmeleri pasif yapmak istiyorum. Satır seçili değilse Sil butonu ve Düzenle butonu çalışmasın istiyorum ya da uyarı versinler.
Yardımlarınızı bekliyorum arkadaşlar. Şimdiden Teşekkür Ederim.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Actionmanager i kullan.
Actionmanager dan standart actionlardan datasetinsert, datasetdelete gibi lazım olan actionları ekle.
Daha sonra bu actionların datasource suna kendi kullandıgın datasource u bagla ve dügmelerin action i olarak bu actionları seç. Actionmanager senin için tüm işlemeleri yapacaktır.
Bu anlattıklarım 2007 geçerli, önceki sürümleri tam hatırlamıyorum. Eger actionmanager dan bu işlemi yapamıyorsan, kullandıgın datasource un Onstatechange eventi üzerinden yapabilirsin.
Actionmanager dan standart actionlardan datasetinsert, datasetdelete gibi lazım olan actionları ekle.
Daha sonra bu actionların datasource suna kendi kullandıgın datasource u bagla ve dügmelerin action i olarak bu actionları seç. Actionmanager senin için tüm işlemeleri yapacaktır.
Bu anlattıklarım 2007 geçerli, önceki sürümleri tam hatırlamıyorum. Eger actionmanager dan bu işlemi yapamıyorsan, kullandıgın datasource un Onstatechange eventi üzerinden yapabilirsin.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
hocam ilgin için teşekkür ederim.emin_as yazdı:Actionmanager i kullan.
Actionmanager dan standart actionlardan datasetinsert, datasetdelete gibi lazım olan actionları ekle.
Daha sonra bu actionların datasource suna kendi kullandıgın datasource u bagla ve dügmelerin action i olarak bu actionları seç. Actionmanager senin için tüm işlemeleri yapacaktır.
Bu anlattıklarım 2007 geçerli, önceki sürümleri tam hatırlamıyorum. Eger actionmanager dan bu işlemi yapamıyorsan, kullandıgın datasource un Onstatechange eventi üzerinden yapabilirsin.
Fazla bilgi sahibi değilim bu konuda. Actionmanager nasıl kullanırım. nereden ulaşabilirim. Kısaca örnek ile anlatırsan çok sevinirim. Delphi 7 kullanıyorum bu arada.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Delphi 2007 için anlatıyorum, delphi 7 de Tactionmanager var mı bilmiyorum.
- Additional grubunda TActionmanager i seçip, formun üzerine koyuyorsun.
Actionmanager1 i çift tıklıyorsun,
Gelen pencerede Action sekmesindeki action listesinin üstündeki toolbarda New Action ve New Standard Action seçenekleri olan listeyi açıp,
Oradan dataset için gerekli olan bir standart action seçiyorsun,
Seçtigin action ın datasource unu kendi datasource una baglıyorsun.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Dediğinizi yapmaya çalıştım.
Form2nin Action olayına geldim. Dataset2 diye tanımladım. Action 1 diye tanımladım. Programı çalıştırdığımda o form kilitleniyor hiçbiyeri çalışmıyor. Biyerde ya da biçok yerde yanlış yapıyorum galiba. Hocam başka çözümü yokmu bunun. Ya da size zahmet daha detaylı anlatabilirmisiniz. Bu Actionmanager'i hiç kullanmadım daha önce. Saygılar.
Form2nin Action olayına geldim. Dataset2 diye tanımladım. Action 1 diye tanımladım. Programı çalıştırdığımda o form kilitleniyor hiçbiyeri çalışmıyor. Biyerde ya da biçok yerde yanlış yapıyorum galiba. Hocam başka çözümü yokmu bunun. Ya da size zahmet daha detaylı anlatabilirmisiniz. Bu Actionmanager'i hiç kullanmadım daha önce. Saygılar.
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
form2 actionu kullanmayacaksın bu işlemde o yanlış.
form2 de
1 DataSource1: TDataSource
1 DBNavigator1: TDBNavigator
1 DBGrid1: TDBGrid
1 Action1: TActionList
yerleştir ve
1 DBGrid1 DataSource = DataSource1 bagla
2 DBNavigator1 DataSource = DataSource1 bagla
3 Action1 cift tıkla dataset sekmesinde
DataSetInsert1 DataSource = DataSource1 bagla
DataSetPost1 DataSource = DataSource1 bagla ve listedeki digerlerine aynı işlemi yap
formu calıştırdıgında istedigini elde etmiş olacaksın.
kolay gelsin....
form2 de
1 DataSource1: TDataSource
1 DBNavigator1: TDBNavigator
1 DBGrid1: TDBGrid
1 Action1: TActionList
yerleştir ve
1 DBGrid1 DataSource = DataSource1 bagla
2 DBNavigator1 DataSource = DataSource1 bagla
3 Action1 cift tıkla dataset sekmesinde
DataSetInsert1 DataSource = DataSource1 bagla
DataSetPost1 DataSource = DataSource1 bagla ve listedeki digerlerine aynı işlemi yap
formu calıştırdıgında istedigini elde etmiş olacaksın.
kolay gelsin....
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
abdulkadir yazdı:form2 actionu kullanmayacaksın bu işlemde o yanlış.
form2 de
1 DataSource1: TDataSource
1 DBNavigator1: TDBNavigator
1 DBGrid1: TDBGrid
1 Action1: TActionList
yerleştir ve
1 DBGrid1 DataSource = DataSource1 bagla
2 DBNavigator1 DataSource = DataSource1 bagla
3 Action1 cift tıkla dataset sekmesinde
DataSetInsert1 DataSource = DataSource1 bagla
DataSetPost1 DataSource = DataSource1 bagla ve listedeki digerlerine aynı işlemi yap
formu calıştırdıgında istedigini elde etmiş olacaksın.
kolay gelsin....
Dediklerinizin aynısını yaptım. Dataset Kategorisinin altında Datasetpost1,Datasetedit1 ve Datasetinsert1 bunları ekledim.
Datasourcelerini de DataSource1 yaptım. Programı çalıştırdım. Benim butonlar aynı eskisi gibi çalışmaya devam ediyor. Sorun var bi yerde ama çözemedim. Yardımlarınızı bekliyorum.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
datasetin onchange olayına
yazman yeterli.
Kod: Tümünü seç
if tablom.state = dsbrowse then
if tablom.recordcount <=0 then
sildugmesi.enabled := false
else
sildugmesi.enabled:=true;
yazman yeterli.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Lost Soul yazdı:datasetin onchange olayına
Kod: Tümünü seç
if tablom.state = dsbrowse then if tablom.recordcount <=0 then sildugmesi.enabled := false else sildugmesi.enabled:=true;
yazman yeterli.
bunu yaptığımda sil düğmesi hep aktif geliyor. Veritabanımda veri kayıtlı çünkü. Söylediğinizin aynısını DBGrid için yaparsak eğer sorunum çözülür. DBGridde seçili satır yoksa diye bişey bulsam onunla da yaparız ama bulamadım

Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
o zaman recordcount yerine dbgrid rowcount =0 diyeceksinizmanaz yazdı:Lost Soul yazdı:datasetin onchange olayına
Kod: Tümünü seç
if tablom.state = dsbrowse then if tablom.recordcount <=0 then sildugmesi.enabled := false else sildugmesi.enabled:=true;
yazman yeterli.
bunu yaptığımda sil düğmesi hep aktif geliyor. Veritabanımda veri kayıtlı çünkü. Söylediğinizin aynısını DBGrid için yaparsak eğer sorunum çözülür. DBGridde seçili satır yoksa diye bişey bulsam onunla da yaparız ama bulamadım

Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Deneyince sonucu yazacağım. Teşekkür Ederim yardımlar için.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Aşagıdaki kod işini görür. Arasıra delphi componetleriyla ilgili yardım dosyalarını veya bir kitap okuyun.
Bu şekilde program yazılmaz.
Bu şekilde program yazılmaz.
Kod: Tümünü seç
sildugmesi.enabled:=dbgrid.selectedrows.count > 0;
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Kitap almayı düşünüyorum en kısa zamanda. Önerebileceğiniz Kitap var mı peki.
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
Kod: Tümünü seç
begin
if dbgrid1.SelectedRows.CurrentRowSelected=true then
if MessageDlg('Kayıt ve ona bağlı kayıtlar silinecek ?',
mtConfirmation, [mbyes, mbNo], 0)=mryes then
adoquery1.delete
else
end;
Yardım eden herkese Teşekkür Ederim.
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: DBGridin içeriğinde kayıt görüntülenmiyorsa...
forumumuzun degerli bir üyesi yazdı tavsiye ederim.manaz yazdı:Kitap almayı düşünüyorum en kısa zamanda. Önerebileceğiniz Kitap var mı peki.
http://www.mfkucukkelepce.com/?p=201