Edit içine checkbox ile kelime girme ve silme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
digitdigitman
Üye
Mesajlar: 32
Kayıt: 04 May 2014 02:23

Edit içine checkbox ile kelime girme ve silme

Mesaj gönderen digitdigitman »

kolay gelsin arkadaşlar
alan düşünün burada günler yazılacak
ama bu günlerin sıralaması ve formatı
PAZARTESİ,SALI,ÇARŞAMBA,PERŞEMBE veya
PAZARTESİ,ÇARŞAMBA,CUMA veya
CUMARTESİ,PAZAR vs şeklinde olacak.
gelelim soruma

bu dbedit içerisine bu günleri
DBCheckBox lar işaretlenerek yazacak ve silecek
ekte saçma sapan bir yolla yaptığım örneği görebilirsiniz (kulağı tersten götermek gibi bişey yaptım)
ekteki resimlere bakarsanız hangi güne tklanırsa sağdaki editlere yazdırıyorum bidaha tıklanırsa sildiriyorum ve yukarıdaki edit textine her seferinde sağdakileri birleştirerek yeniliyorum

ilk pazartesi olursa sorunyok pazartesi,salı,çarşamba... gidiyo ama pazartesi hariç sağdaki editlerin başına virgül koyuyorum ve ilk salıdan başlarsa
,salı,çarşamba,perşembe oluyo yani ilk başta olmaması gereken bir virgül oluyo.

bunun daha kısa ve profesyonel bir yolu olduğunu düşünüyorum. string fonksiyonlarına baktım ama kısa yoldan yaptığımı yapacak
hani edit içinde salıyı bul-sil gibi bişey bulamadım yardım ederseniz sevinirim. teşekkürler
Dosya ekleri
2.png
2.png (2.63 KiB) 2191 kere görüntülendi
1.png
1.png (2.84 KiB) 2191 kere görüntülendi
xxxjedixxx
Üye
Mesajlar: 216
Kayıt: 10 Ara 2013 03:50

Re: Edit içine checkbox ile kelime girme ve silme

Mesaj gönderen xxxjedixxx »

Merhaba,
Ben yazdıklarından hiç bir şey anlamadım. Ayrıca resimler de o kadar küçük ki bir şey görünmüyor. Açıklamanız da çok yetersiz.

"Alan düşünün burada günler yazacak." - Bu ne demek?
Günlerin sıralamasından kasıt nedir? (Format'ı hiç sormuyorum!)


Tahmin ederek bir örnek yazıyorum

Formumuzda 1 tane EditBox ve 7 tane checkbox olsun ve bu checkbox'ların adları da chDay1, chDay2, ... chDay7 olsun.
Checkbox'ların hepsinin OnClick eventi aşağıdaki ChDay1Click procedure bağlı olacak.

Kod: Tümünü seç

procedure TForm1.ChDay1Click(Sender: TObject);
var i: Integer;
    Txt: string;
begin
  Txt := '';
  for i := 1 to 7 do
  if TCheckBox(FindComponent('chDay' + InttoStr(i))).Checked then
  begin
    if Txt <> '' then Txt := Txt + ',';
    Txt := Txt + TCheckBox(FindComponent('chDay' + InttoStr(i))).Caption;
  end;
  Edit1.Text := Txt;
end;
digitdigitman
Üye
Mesajlar: 32
Kayıt: 04 May 2014 02:23

Re: Edit içine checkbox ile kelime girme ve silme

Mesaj gönderen digitdigitman »

ilgine teşekkür ederim. verdiğin kodu kullandım ama axcess violation hatası verdi.
yapmak istediğim şeyi anlatırken biraz daha kısaltayım.

istediğim şey şu 1 tane edit , 7 tane chechbox düşün captionları pazartesi,salı,çarşamba,perşembe,cuma ve cumartesi
hangisine kliklerse eğer Checked özelliği true ise captionunu edit içine yazacak ama varsa bir öncekinden sonraya
mesela editte salı yazıyorsa perşembeye basıldığında edit nesnesinin text i salı,perşembe olacak arkasından cumartesiye basarsa buseferde editin texti salı,perşembe,cumartesi olacak. ama perşembeye tekrar bastığında Checked özelliği false olacağı için perşembeyi edit textinden silecek ve editin texti salı,cumartesi olacak umarım bu sefer anlatabilmişimdir. (buarada resimleriçin 100px büyük dosya yükleyemiyorum. exede 256 kib büuük olduğu için yükleyemiyorum)
istersen mail atabilirim delphi 2011
digitdigitman
Üye
Mesajlar: 32
Kayıt: 04 May 2014 02:23

Re: Edit içine checkbox ile kelime girme ve silme

Mesaj gönderen digitdigitman »

bunu uzun yoldan yapabiliyorum resimleri yükleyebilseydim daha net anlaşılabilirdi. ama bu seferde ilk güm pazartesi değilde başka birisi olursa edititn texti virgül ile başlıyor bunu istemiyorum işte
xxxjedixxx
Üye
Mesajlar: 216
Kayıt: 10 Ara 2013 03:50

Re: Edit içine checkbox ile kelime girme ve silme

Mesaj gönderen xxxjedixxx »

Access violation hatası şundandır. Muhtemelen Checkox'ların adlarını girmedin yada Büyük küçük harfe dikkat etmedin. Aynen yazdığım gibi olmalı isimler. chDay1'i chday1 veya CHDAY1 yazamazsın. Kodda gördüğün gibi olmalı. FindComponent fonksiyonu küçük/büyük harf duyarlıdır.

Verdiğim koda göre chDay1, chDay2, ...chDay7 adlarında checkboxlar olmalı ve herbirinin caption'larını Pazartesi'den Pazar'a kadar yazmalısın. Yani chDay1'in caption'ı Pazartesi, chDay2'nin caption'ı Salı, ... chDay7'nin caption'ı da Pazar olmalı.
digitdigitman
Üye
Mesajlar: 32
Kayıt: 04 May 2014 02:23

Re: Edit içine checkbox ile kelime girme ve silme

Mesaj gönderen digitdigitman »

teşekkür ederim sayende çözüldü. hatayıda yazılışlardan değil,kodda hatalı olduğunu düşündüğüm bir yeri değiştirdiğim için vermiş. :(
yardımların için çok teşekkürler.
Cevapla