DbCheckbox sorunu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
nugre
Üye
Mesajlar: 54
Kayıt: 17 Kas 2003 10:57
Konum: Bursa

DbCheckbox sorunu

Mesaj gönderen nugre »

Merhaba
ben interbase veri tabanı kullanıyorum 1 karakterlik string alanlarım var E,H
gibi
yanlız ben sadece E kullanıyorum evetse işaretliyor ,
DbCheckbox lar gri işaretli şekilde geliyor birincisi bunların beyaz ve işaretsiz gelmesini istiyorum bir kaç şeyle bunu getirdim ama birini işaretleyince hepsi işaretleniyor tekrar tek tek kaldırmam gerekiyor
sonra sadece Checkbox kullanayım dedim bu güzel istediğim gibi ama veritabanına nasıl aktarıcam beceremedim?
bu konuda çözümü olan varmı...
Kullanıcı avatarı
mikser
Üye
Mesajlar: 120
Kayıt: 30 Haz 2003 09:54
Konum: Ankara

Mesaj gönderen mikser »

DBChekcBox un;
ValueChecked özelligine E
ValueUncehecked özelligine H
yazın.

eger yeni kayıt eklediginizde işaretsiz gelsin istiyorsanız Table nin onnewrecord un da alana H atayın.
Kullanıcı avatarı
nugre
Üye
Mesajlar: 54
Kayıt: 17 Kas 2003 10:57
Konum: Bursa

Mesaj gönderen nugre »

bu yöntem denediğim yöntemlerden biriydi ama sorun çözülmüyor
yine gri şekilde işaretli geliyor ?=
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

alan degeri null ise oyle olması lazım
beforeinsert triggerinda ilk degerleri verebilirsin

Kod: Tümünü seç

if (new.alanim is null) then
   new.alanim = ilkdeger
gibi
ÜŞENME,ERTELEME,VAZGEÇME
Kullanıcı avatarı
mikser
Üye
Mesajlar: 120
Kayıt: 30 Haz 2003 09:54
Konum: Ankara

Mesaj gönderen mikser »

üstad vt ye baglanmak icin ne kullanıyorsunuz bilmiyorum fakat diyelimki IBDataSet kullanıyorsunuz

IBDataSet in onnewrecord da;

IBDataSetLOGICAL.Text := 'H';

yazip deneyin.

VT kısmında bunu yaparsanız kaydetmeden göremezsiniz.
Kullanıcı avatarı
nugre
Üye
Mesajlar: 54
Kayıt: 17 Kas 2003 10:57
Konum: Bursa

Mesaj gönderen nugre »

aynen yap

Kod: Tümünü seç

if (  data.IBDataSoru.FieldByName('s7').isnull) then
   data.IBDataSoru.FieldByName('s7').AsString:='H'
aynen yaptım değişen bişi yok...
peki normal checbox veri tabanına nasıl aktarırım bu konuda yardım edebilirmisiniz...
Kullanıcı avatarı
mikser
Üye
Mesajlar: 120
Kayıt: 30 Haz 2003 09:54
Konum: Ankara

Mesaj gönderen mikser »

üstad denedim ve bende calisti.

Kod: Tümünü seç

CREATE TABLE DENEME (
    SIRA     INTEGER NOT NULL,
    LOGICAL1  VARCHAR(1)
);

ALTER TABLE DENEME ADD PRIMARY KEY (SIRA);
bu da uygulama tarafı. OnNewRecord da

Kod: Tümünü seç

 if( IBDataSet1.FieldByName('LOGICAL1').IsNull) then
   IBDataSet1.FieldByName('LOGICAL1').Text = 'H';
DBCheckBox da

ValueChecked = E
ValueUnChecked = H


normal checkbox la da yapabilirsiniz fakat DataSourcenin ondatachange sinde kontrol etmeniz lazim.

CheckBox1->Checked = DataSetLOGICAL->Text = 'E' ;

gibi...
Kullanıcı avatarı
nugre
Üye
Mesajlar: 54
Kayıt: 17 Kas 2003 10:57
Konum: Bursa

Mesaj gönderen nugre »

sorun şu tablolarım master -detail
yani kimlik bilgileri master , sorular ise detail tablo master tabloda iken işlem oluyor istenilen ama detail tabloda olmuyor sorular tablom yani ...

şüphelendim yaptım oldu ama master da olmuyo...
Kullanıcı avatarı
Fatih!
Kıdemli Üye
Mesajlar: 1172
Kayıt: 26 Kas 2004 10:46
Konum: Malatya
İletişim:

Mesaj gönderen Fatih! »

Kod: Tümünü seç

procedure TDataModule6.Query1NewRecord(DataSet: TDataSet);
begin
 DataModule6.query1.FieldByName('cinsiyet').Asboolean :=false;
end;
programımda kullanmıştım
Kullanıcı avatarı
nugre
Üye
Mesajlar: 54
Kayıt: 17 Kas 2003 10:57
Konum: Bursa

Mesaj gönderen nugre »

master detail table neden yapamıyorum bu dbchecbox sorununu bilen yokmu :(
Cevapla