المشاركات : 12
المواضيع 6
:
: 8
الإنتساب : May 2019
15-08-2019, 02:52 PM
(آخر تعديل لهذه المشاركة: 15-08-2019, 02:55 PM بواسطة بوزيان.)
المشاركات : 102
المواضيع 15
:
: 96
الإنتساب : Apr 2017
(15-08-2019, 02:52 PM)بوزيان كتب : ما طريقة جعل المؤشر في edit عند تنفيد أمر البحث في هذا المثال المرفق أي لا ينتقل إلى richedit، مع إبقاء الأمر في Edit1Change
[size=small]المثال المرفق[/size]
اخي الكريم
فقط احذف من هذا الكود هذه الكلمة setfocus
كود :
procedure RE_ColorerMots(RE: TRichEdit; Mot: ShortString; AColor: TColor; var Count: integer);
// 3 secondes 37 secondes 721 ms pour 4784 mots dans Zola992K.txt de 992 Ko
label Recomm;
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
begin
Count := 0;
with RE do
begin
// Commence la recherche après la sélection en cours s'il y en a une sinon, commence au début du texte
if SelLength <> 0
then StartPos := SelStart + SelLength
else StartPos := 0;
Recomm:
ToEnd := Length(Text) - StartPos; // ToEnd indique la longueur entre StartPos et la fin du texte du RichEdit
FoundAt := FindText(Mot, StartPos, ToEnd, [stMatchCase]);
if FoundAt <> -1 then
begin
inc(Count);
فقط احذف هذه الكلمة setfocus
SetFocus;
SelStart := FoundAt;
SelLength := Length(Mot);
SelAttributes.Color := AColor;
StartPos := FoundAt + Length(Mot);
if StartPos < length(Text) then goto Recomm;
end;
SelLength := 0;
end;
end;
كل من 1 user says قال شكرا ل samnaj00 على المشاركة المفيدة1 user says Thank You to samnaj00 for this post
• بوزيان
المشاركات : 12
المواضيع 6
:
: 8
الإنتساب : May 2019
(17-08-2019, 04:59 PM)samnaj00 كتب : (15-08-2019, 02:52 PM)بوزيان كتب : ما طريقة جعل المؤشر في edit عند تنفيد أمر البحث في هذا المثال المرفق أي لا ينتقل إلى richedit، مع إبقاء الأمر في Edit1Change
[size=small]المثال المرفق[/size]
اخي الكريم
فقط احذف من هذا الكود هذه الكلمة setfocus
كود :
procedure RE_ColorerMots(RE: TRichEdit; Mot: ShortString; AColor: TColor; var Count: integer);
// 3 secondes 37 secondes 721 ms pour 4784 mots dans Zola992K.txt de 992 Ko
label Recomm;
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
begin
Count := 0;
with RE do
begin
// Commence la recherche après la sélection en cours s'il y en a une sinon, commence au début du texte
if SelLength <> 0
then StartPos := SelStart + SelLength
else StartPos := 0;
Recomm:
ToEnd := Length(Text) - StartPos; // ToEnd indique la longueur entre StartPos et la fin du texte du RichEdit
FoundAt := FindText(Mot, StartPos, ToEnd, [stMatchCase]);
if FoundAt <> -1 then
begin
inc(Count);
فقط احذف هذه الكلمة setfocus
SetFocus;
SelStart := FoundAt;
SelLength := Length(Mot);
SelAttributes.Color := AColor;
StartPos := FoundAt + Length(Mot);
if StartPos < length(Text) then goto Recomm;
end;
SelLength := 0;
end;
end;
جزاك الله خيرا