Richedit ile ilgili bir sorun

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
emrah24
Üye
Mesajlar: 21
Kayıt: 02 Eyl 2018 05:36

Richedit ile ilgili bir sorun

Mesaj gönderen emrah24 »

Merhaba
richedit alanına rtf den hazır metinleri çekiyorum

örneğin 1. satırım kalın formatta. bunun kalın olduğunu inputa nasıl yazdırabilirim.

input.text:=RichEdit1.Lines[1]. gibi bir yöntemi var mıdır ?

satır başlangıç özelliklerini alsam yeterli sonrasında gelenin önemi yok.

şimdiden teşekkürler
Kullanıcı avatarı
loaded
Üye
Mesajlar: 126
Kayıt: 12 Eki 2010 09:45
Konum: Konya
İletişim:

Re: Richedit ile ilgili bir sorun

Mesaj gönderen loaded »

Merhaba
Kodlar Lazarus'ta yazılıp denenmiştir.
Mantık, yazı stilini öğrenmek istediğiniz metnin , öncelikle konumunu bulmak ardından konumdan yazı stilini almak ve stil içeriğini kontrol etmek.

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
  i:integer;
  rc:integer=0;
  TextParams: TFontParams;
begin
  for i:=0 to RichMemo1.Lines.Count-1 do
  begin
      rc:=rc+Length(RichMemo1.Lines.Strings[i]);
      RichMemo1.GetTextAttributes(rc,TextParams);
      if (fsBold in TextParams.Style) then
      showmessage(inttostr(i)+ ' nolu satır ' + RichMemo1.Lines.Strings[i]);
  end;
end; 
Kalk ve işe yarar bir şey yap! Çünkü Allah (c.c.) yeniden başlayanların yardımcısıdır.
emrah24
Üye
Mesajlar: 21
Kayıt: 02 Eyl 2018 05:36

Re: Richedit ile ilgili bir sorun

Mesaj gönderen emrah24 »

Çok teşekkür ederim gece deneyeceğim bende. Mantığı görünce olay çözüldü gibi. Çok büyük bir fayda sağladınız. Allah razı olsun
emrah24
Üye
Mesajlar: 21
Kayıt: 02 Eyl 2018 05:36

Re: Richedit ile ilgili bir sorun

Mesaj gönderen emrah24 »

delphi 7 de bir türlü çalıştıramadım sanırım bende RichMemo comp yüklü değil ondan kaynaklı ve yükleyemiyorum da.
Kullanıcı avatarı
loaded
Üye
Mesajlar: 126
Kayıt: 12 Eki 2010 09:45
Konum: Konya
İletişim:

Re: Richedit ile ilgili bir sorun

Mesaj gönderen loaded »

Emrah Bey,
Bende delphi olmadığı için şu anda deneme yapamıyorum. Kullandığım bileşen olan Richmemo, Delphideki Richeditin muadilidir vede bir şekilde onda da aynı özelliklerin olması gerekiyor diye düşünüyorum.
Yaptığım ufak araştırmalar neticesinde ;
https://stackoverflow.com/questions/531 ... -strangely
https://stackoverflow.com/questions/106 ... on-its-own

Şöyle bir kod hazırladım fakat çalıştırmadım, çünki delphi kullanmıyorum !!! Zannedersem ufak tefek bir iki değişiklikle istediğinizi yapacaktır.

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
  i:integer;
  rc:integer=0;
  begin
  for i:=0 to RichEdit1.Lines.Count-1 do
  begin
      rc:=rc+Length(RichEdit1.Lines.Strings[i]);
      RichEdit1.SelStart := rc;
      RichEdit1.SelLength := Length(RichEdit1.Lines.Strings[i]);
      if (fsBold in RichEdit1.SelAttributes.Style) then
      showmessage(inttostr(i)+ ' nolu satır ' + RichEdit1.Lines.Strings[i]);
  end;
end;
Kalk ve işe yarar bir şey yap! Çünkü Allah (c.c.) yeniden başlayanların yardımcısıdır.
emrah24
Üye
Mesajlar: 21
Kayıt: 02 Eyl 2018 05:36

Re: Richedit ile ilgili bir sorun

Mesaj gönderen emrah24 »

hocam Allah senden razı olsun. çok büyük bir olayı sayenizde çözdüm. haricen de e-postalarıma verdiğiniz cevaplar için teşekkür ederim.
lazarusta yaptım dediğiniz gibi. vermiş olduğunuz kod örneklerini kendi uygulamama göre düzenledim ve baya güzel bi iş çıkardım kendimce.

Tekrar tekrar teşekkür ederim.
Cevapla