satirbaşları

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

satirbaşları

Mesaj gönderen sr1111 »

s.a
aşağıdaki code ile memoda bir yazidaki ilk satirbaşını buyuk yaptim.
istiyorum ki diger tum satırbaşları da buyuk harf olsun. nasıl yapabilirim. uppercase komutu ile

memo1.SelStart:=0;
memo1.SelLength:=1;
memo1.Seltext:=wideUpperCase(memo1.SelText);
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: satirbaşları

Mesaj gönderen ikutluay »

döngü içinde tüm parafrafları kont rol edin.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

Re: satirbaşları

Mesaj gönderen sr1111 »

bilmedigim için zaten nasil yapacagimi soruyorum komutu hocam. ornek verirsen iyi olur.
Kullanıcı avatarı
unicorn64
Üye
Mesajlar: 919
Kayıt: 04 Nis 2006 08:56
Konum: yine yeniden Ankara ^_^

Re: satirbaşları

Mesaj gönderen unicorn64 »

illaki uppercase le yapmanız mı gerekiyor?
stringin ilk harfini büyük yapan bi fonksiyon vardı ama hatırlayamadım ama şöyle de olabilir

Kod: Tümünü seç

var 
c:char;
s:string;

for i:=0 to memo1.lines.count-1 do
begin
   s:=memo1.lines[i];
   c:=s[1];
   if ((ord(c)>96) and (ord(c)<123)) then
   begin
      c:=chr(ord(c)-32);
      s[1]:=c;
      memo1.lines[i]:=s;
   end;
end;
bazen yükselmek için önce dibi görmek gerekir...

forumda soru sormadan önce bakılmalı bence
daha fazlası için...

yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...

Resim
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

Re: satirbaşları

Mesaj gönderen sr1111 »

hocam cok tesekkur ederim tam istediğim gibi bir komut fakat şöyle cok önemli bir sorun var. türkçe ğ ş ı gibi harfleri büyütmüyor. uyguladigim sekil bu. sizinkinde bir yerde hata vermisti. widechar olarak uygulayabilirmiyiz. widechar widestring yaptim var degerlerini ama hata verdi calismadi.

var
c:char;
s :string;
i:integer;
begin
for i:=0 to memo1.lines.count-1 do
begin
s:=memo1.lines;
c:=s[1];
if ((ord(c)>96) and (ord(c)<123)) then
begin
c:=chr(ord(c)-32);
s[1]:=c;
memo1.lines:=s;
end;

///
memo1.Seltext:=wideUpperCase(memo1.SelText); komutunu kullandiğim zaman türkçe karakterleride buyutuyor. bu komutu kullanarak bir şeyler yapamaz miyiz.
Kullanıcı avatarı
unicorn64
Üye
Mesajlar: 919
Kayıt: 04 Nis 2006 08:56
Konum: yine yeniden Ankara ^_^

Re: satirbaşları

Mesaj gönderen unicorn64 »

haklısınız türkçe karakterleri düşünmemiştim.
ascii tabloda ingilizce karakterlerin yerleri bu yapıay uygun ancak türkçe karakterlerin tablodaki dağılımı bu şekilde çözüme uygun değil.
onları manuel yapmak gerekecek.
yani satırın ilk karakterini aldıktan sonra

Kod: Tümünü seç

if c='ç' then c:='Ç'
else if c='ş' then c:='Ş';
gibi. daha önce de dediğim gibi doğrudan stringin ilk karakterini büyük yapan bir string fonksiyonu olacaktı ama...
bazen yükselmek için önce dibi görmek gerekir...

forumda soru sormadan önce bakılmalı bence
daha fazlası için...

yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...

Resim
Cevapla