var
S : String;
Str1 : String;
Str2 : String;
TextLen : Integer;
Index1 : integer;
Index2 : integer;
begin
S := Editor.Lines.GetText;
TextLen := Editor.GetTextLen; // Editor : TMemo
Label1.Caption := intToStr(TextLen);
if TextLen > 0 then
begin
For Index1 := 1 To TextLen Do
begin
Index2 := index1 + 1;
Str1 := S[Index1];
Str2 := S[Index1] + S[Index2];
{My Codes}
end;
end;
end;ما الخطأ في هذا الكود
السلام عليكم
أخي العزيز
الكود يعمل وليس به مشكلة
هل من الممكن او توضح ما الذي تريد عمله؟ وما الخطأ الذي لديك في هذا الكود مع ذكر رسالة الخطأ ان امكن
مع تحياتي
والسلام
لا تحزن:
إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.
لا تحزن:
فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.
أكتب في الـ Memo ولو حرف واحد يظهر لك خطأ في معالجة الذاكرة
قد كان يعمل معي الكود ولكن لعلي غيرت في البرنامج شيء معين الله أعلم به .
هذه الرسالة التي ظهرت
Access violation at address 004C941A module 'Project1.exe'. Pead Of address 00000002 .
أما في نافذة أخطاء البرنامج ظهر هذا التنبيه :
FOR-Loop variable 'Index1 May be undefined after loop
وجزاك الله خيراً على تعاونك(f)
السلام عليكم
أخي العزيز،
في اي حدث تضع هذا الكود؟ وضعته في Onchange وداخل Button وايضا keyPress و Keydown ولم اصادف اي مشكلة في ذلك باستخدام دلفي 5 و 6؟
ايضا لم توضح لي ما الذي تريد عمله من خلال هذه الكود؟
هل تريد ان يعد لك عدد الحروف داخل ال Memo?
لا تحزن:
إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.
لا تحزن:
فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.
أستخدم Delphi6
الحدث النقر على Button
لا أريد عد الحروف بل هذا شيء ثانوي وغير مقصود من البرنامج .
البرنامج يقرأ النصوص العربية صوتياً ولكن لم أُظهر الكود لهذه العمليات لأن الخطأ ليس منها
إن كنت تريدني أن أعرض الأكواد الأخرى فلا مانع لكن اصبر عليّ لأني مسوي البرنامج حقل تجارب يحتاج إلى تنقيح
(f) (f)
:o قد كنت لما عرضت الكود عرضته مختصراً وليس كما هو في برنامجي
وأصل الخطأ أن كود مقسم إلى عدة أحداث
var
S : String;
Str1 : String;
Str2 : String;
procedure TForm1.FormCreate(Sender: TObject);
begin
S := Editor.Lines.GetText; // وضعته هنا لأني أحتاج في أكثر إجراء
end; // ولكن خاب ظني
procedure TForm1.Reading;
var
TextLen : Integer;
Index1 : integer;
Index2 : integer;
begin
TextLen := Editor.GetTextLen; // Editor : TMemo
if TextLen > 0 then
begin
For Index1 := 1 To TextLen Do
begin
Index2 := index1 + 1;
Str1 := S[Index1];
Str2 := S[Index1] + S[Index2];
{My Codes}
end;
end;
end;فلما غيرت الكود كما ذكرته لك في المنتدى اشتغل البرنامج 100% والحمد لله أولاً وآخراً
أكرر اعتــ :o ــذاري فما زلت مبــ :o ــتدئً وجزاك الله خيراً(f)
ممتاز :)
ما شاء الله عليك انت الاستاذ لأنك ان اللي صلحت الكود، وانا ما ساعدتك بشي
وان شاء الله نخدمك في غيرها
لا تحزن:
إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.
لا تحزن:
فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.
لا بالعكس أنت الوحيد الذي :) ساعدني : قلت لي أن الكود يعمل، فقلدتك فيه
كيف أكون أستاذاً وخبرتي (أقصد تخبطي فيها:o ) خمسة أشهر ومعتمد على الكتب العربية التي في حقيقة عربية بدون كفرات لذلك فلا زلت أحبو
(f)
هذا الموضوع مغلق.