المشاركات : 39
المواضيع 15
:
: 0
الإنتساب : Mar 2011
السلام عليكم
كيف كتابة كود يجعل الفراغات بين كلمات جملة مدخلة في edit بمقدار فراغ واحد
فمثلا لو أدخل المستعمل كلمة وترك فراغين أو أكثر (مسافة) وعند الضغط على زر يرجع مقدار الفراغ إلى مسافة واحدة
وشكراً
المشاركات : 628
المواضيع 72
:
: 211
الإنتساب : Jun 2010
و عليكم السلام
موضوع ذات صلة:
http://www.delphi4arab.net/forum/showthr...p?tid=4561
يمكنك إستعمال خاصية commatext في Tstringlist ثم توظف الكلمات المختارة كما تشاء
بالتوفيق
أدبني الدهر فأراني نقص عقلي وإذا ما ازددت علما زادني علما بجهلي
المشاركات : 201
المواضيع 60
:
: 0
الإنتساب : Oct 2009
وعليكم السلام ورحمة الله وبركاته
إقتباس :فمثلا لو أدخل المستعمل كلمة وترك فراغين أو أكثر (مسافة) وعند الضغط على زر يرجع مقدار الفراغ إلى مسافة واحدة
ا
ضن انه من الاحسن ان تجعل الـEdit لا تقبل مسافتين متتاليتين من الاول .
تفضل هذا الكود الدي يمنع من إدخال مسافتين متتاليتين :
PHP كود :
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Edit1.Text <> '' then
if (edit1.Text[Length(edit1.Text)] = #32) and (Key=#32) then
Key:=#0;
end;
شرح الكود :
عندما يضغط المستخدم على مفتاح من لوحة تقوم الEdit بختبار ماذا ضغط المستخدم إذا ضغط مفتاح المسافة تدهب تتاكد بان النص قبل الضغط كان لا توجد به مسافة في الاخير .....
#32 تعني ' '
#0 تعني null كانه لم يضغط شيئ
راجع : Table Ascii
ملاحظة : يمكنك تطوير الكود السابق
بالتوفيق ,,
كن متواضعا ولا تكن متكبرا // الصبر + المثابرة = النجاح
المشاركات : 39
المواضيع 15
:
: 0
الإنتساب : Mar 2011
شكرا جزيلا
هل من الممكن أن توضح وتشرح لي الخاصية commatext وTstringlist
abdelmalek كتب :ضن انه من الاحسن ان تجعل الـEdit لا تقبل مسافتين متتاليتين من الاول .
طريقة مميزة جزاك الله خيرا
لكن بفرض أننا نسخنا من مكان آخر نص ووضعناه في edit وكان في هذا النص فراغات أكثر من اللازم
ما الحل؟
لدي فكرة لكن لم أستطع تنفيذها وهي تقسيم النص إلى كلمات حسب الفراغات ووضعه في جدول
ومن ثم إعادة تركيبه مع حذف جميع الفراغات في البداية والنهاية لكل كلمة بالدالة Trim
هل من الممكن فعل هذا؟
وبارك الله فيكم
المشاركات : 628
المواضيع 72
:
: 211
الإنتساب : Jun 2010
PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
Var
T: TextFile;
L,P: String;
S: TStringList;
begin
AssignFile(T,'C:\Fichier.txt');
Reset(T);
S := TStringList.Create;
Readln(T,L);
S.CommaText := L;
P:=S[0];
showmessage ('كلمة رقم 1'+'='+P);
P:=S[1];
showmessage ('كلمة رقم 2'+'='+P);
CloseFile(T);
end;
لاحظ ما يعطيك إياه showmessage
أدبني الدهر فأراني نقص عقلي وإذا ما ازددت علما زادني علما بجهلي
المشاركات : 39
المواضيع 15
:
: 0
الإنتساب : Mar 2011
بارك الله فيك
طريقة رائعة لتقسيم الجملة
مشكور جدا
وحاولوا معي توظيفها في سؤالي
المشاركات : 39
المواضيع 15
:
: 0
الإنتساب : Mar 2011
ممكن شرح لهذه الكلمات:
المتغيرات:
TextFile
TStringList
الدوال:
AssignFile
Reset
CloseFile
الخصائص:
Create
CommaText
مع العلم أن البرنامج بقي محتفظا بالكلمات الأولى فقط عند تغيير الكلمات
المشاركات : 2,293
المواضيع 157
:
: 81
الإنتساب : Dec 2008
وعليكم السلام ورحمة الله وبركاته
البحث والاستبدال StringReplace فراغين بواحد.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
المشاركات : 39
المواضيع 15
:
: 0
الإنتساب : Mar 2011
السلام عليكم
مازلت أتخبط حول حل هذا التمرين
لكن ساعدني أحد الأصدقاء وأعطاني كود بلغة سي بلس بلس
PHP كود :
private void button1_Click(object sender, EventArgs e)
{
string res = "";
textBox1.Text = "_\t___ _ _\nnnn";
if (textBox1.Text!="")
{
textBox1.Text = textBox1.Text.Replace("\t", " ");
textBox1.Text = textBox1.Text.Replace("\n", " ");
string[] str = textBox1.Text.Split(' ');
foreach (string partie in str)
{
if (partie!="")
{
res += partie + " ";
}
}
MessageBox.Show(res.Trim());
}
}
هل من الممكن ترجمته في دلفي
مع العلم أن split تعني تقسيم الجملة حسب الفراغات
المشاركات : 240
المواضيع 16
:
: 0
الإنتساب : Dec 2008
على السريع :
كود :
edit1.Text:=StringReplace(edit1.Text,' ', ' ', [rfReplaceAll]);