delphi4arab منتديات دلفي للعرب

نسخة كاملة : البحث في عنصر RichtEdit
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2 3
تقصد تلوين الكلمة التي نبحث عنها في كل الاسطر؟
[صورة: 88878762.png]

آسف لأني لم أفهم سؤالك
كود :
procedure GetTextColor(const ARichEdit : TRichEdit;const ASubText : AnsiString;const AColour : TColor); var i : Integer; begin if not Assigned( ARichEdit ) then EXIT; if ( Trim( ASubText ) = EmptyStr ) then EXIT; i := PosEx( ASubText, ARichEdit.Text ); while ( i>0 ) do begin ARichEdit.SelStart := Pred( i ); ARichEdit.SelLength := Length( ASubText ); ARichEdit.SelAttributes.Color := AColour; ARichEdit.SelAttributes.Style :=[fsBold]; i := PosEx( ASubText, ARichEdit.Text,Succ( i ) ); end; end;
لا تنسى
كود :
Uses StrUtiles;
للاسف اخي خطا
[صورة: picture0001n.png]
المشكلة في توزيع اللون
ايجاد النص احتلت ولكن التلوين لا

البارحة لقد بحث عن فائدة BeginUpdate/EndUpdate
كانت مشاركة بالغة الانجليزية مما اضطر الى حدفها
ان استخدام هذه التوابع تعطي سرعة كبيره جدا للناتج في الحلقات الكبيرة
وقد جربته بنفسي
اشكرك على المعلومة
ولكن ينبغي حل المشكلة

نص الاختبار
Key PDF processing features of PDFtoolkit: PDF PDF
processing Key PDF featuresPDF of PDFtoolkit: PDF
Key features PDF processing of PDFtPDFolkit: PDF

بالنسبة لمحاولتي البارحة كانت النتيجة
[صورة: picture0002w.png]
ولكنة حل غير كامل او غير صحبح
الدالة تمشي عندي
[صورة: 84165012.png]
اخي paix144 انت تستخدم نسخة قديمة
جرب الكود على DXE2

D7 نسخة رائعة ولكن قديمة
ان كنت عملت عليها فلن اسأل شيء
التحدي على DXE2
التحدي هو النجاح على DXE2

معلومة الالوان المثمثلة بقيمة عددية اختلفت في النسختين DXE2وDXE
فمثلا اللون clcream
يختلف في النسختين
وهناك اختلافات كبيرة
سأعمل به مسقبلا إن شاء الله
d7قديمة لكن فعالة
d7 لها معزة كبيرة ولا استطيع الاستغناء عنها
فهيا المنقد في الشدائد عندما تتصعب الامور في النسخ الحديثة
واغلب الكمبوننت تعمل معها
للنظر الى findtext لعلنا نجد ما نجهله
كود :
function TCustomRichEdit.FindText(const SearchStr: string; StartPos, Length: Integer; Options: TSearchTypes): Integer; var Find: TFindText; Flags: Integer; begin with Find.chrg do begin cpMin := StartPos; cpMax := cpMin + Length; end; Flags := FR_DOWN; if stWholeWord in Options then Flags := Flags or FR_WHOLEWORD; if stMatchCase in Options then Flags := Flags or FR_MATCHCASE; {$IFDEF CLR} Find.lpstrText := SearchStr; {$ELSE} Find.lpstrText := PChar(SearchStr); {$ENDIF} Result := SendStructMessage(Handle, EM_FINDTEXT, Flags, Find); end;
abdelali91 كتب :السلام عليكم
أحاول صنع برنامج يقوم بالبحث عن كلمة موجودة في نص معين واستعنت بذلك بالعناصر التالية:
RichEdit و Button و Edit.text
البرنامج اشتغل ولكن عندما اظغطك على الزر لا يحدث شيى
وهذا كود البرنامج:
كود :
procedure TForm4.Button1Click(Sender: TObject); var i,l:integer; s: string; begin s:=edit1.Text; l:=Length(edit1.text); i:= RichEdit1.FindText(s,0,l,[]); if i>0 then begin RichEdit1.SetFocus; RichEdit1.SelStart := i; RichEdit1.SelLength := length(s) ; RichEdit1.SelAttributes.Color:=clred; end; end; end.


عوض l ب: ; ( l:=length(richedit1.text
الصفحات : 1 2 3