الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

إلى الأخ tmaaa وبقية الخبراء

مغلق
بدأه jrahma في 29 ديسمبر 2003 · 13 رد · 1,386 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يا جماعة

لدي مشكلة عويصة في برامج اللغة العربية

لازلت غير راض أبداً عن شكل الفورم..

فالأزرار (تصغير.إغلاق.تكبير) ما تزال على الجانب الأيمن

والكتابة لانزال (قبيحة) كما تشاهدون في الملف المرفق حيث أن نقطتي (الاسم) تظهران على الجانب الأيمن

ما الحل رجاء؟

post-15-1072683885_thumb.jpg

#2

مرحبا

ماتوقعت انه ممكن بالدلفي تغيير مكان الازرار اغلاق تصغير تكبير من اليمين لليسار :)

معلومه جديده ياليت يفيدونا المحترفين

وبالنسبه للكتابه ايش رايك لو كتبت الكلمه في الكود نفسه مو من خصائص الأداه

ولو مانجحت غير مكان النقطتين سواء قبل الكلمه او بعدها انا اسوي نفس للطريقه للمسجات اذا كنت بكتب سؤال وفي اخره علامة استفهام

>علامة الاستفهام تكون اول الجمله<

مجرد محاولات لاأكثر :)

محمـــــــــد

المملكه العربيه السعوديـــه

[الفريق العربي للبرمجه الأفضـل دائما]

/

::::::::::::::::::::::::::::::::::::

msvbvm60.dll = فيجوال بيسك

.................= دلفــــــــــــــي

::::::::::::::::::::::::::::::::::::

#3

السلام عليكم

لي إعتراض على عنوان الموضوع فهو مخالف لقوانين المنتدى وأتمنى تعديله.

نحن هنا لمساعدة بعضنا في أي معضلات تواجهنا فلا داعي لاستعمال المصطلحات "أستاذ" و" أساتذه" " خبراء" ...الخ

كان الأحرى أن تحاول البحث عن حل لسؤالك اما في المنتدى لانه قد ذكرت هذه المشكله مسبقا او تبحث في google وستجد الجواب في ثوان ولنقل دقائق معدودة ( تبعا لسرعه الانترنت لديك :) ).

أضف هذا الكود في FormCreate في برنامجك

var
 Oldlong:integer;
begin
 OldLong := GetWindowLong(Form1.Handle,GWL_EXSTYLE);
 SetWindowLong(Form1.Handle, GWL_EXSTYLE,OldLong or WS_EX_LAYOUTRTL);
 InvalidateRect(Form1.Handle,nil,True);

باستخدام الكود السابق وبتغيير قيمة Handle تستطيع تغيير خواص المكونات من LTR لتصبح RTL . استخدم الكود مع المكون الذي كتبت فيه جملة " الاسم : " بتغيير ثلاث أماكن في الكود وهي قيم الـ Handle الممررة في توابع الـ API الثلاثة المستخدمة في الكود .

الكود موجود في أحد المواضيع السابقة في المنتدى ..

ربما هناك طرق أخرى ... أترك امرها لك ..

---

ماتوقعت انه ممكن بالدلفي تغيير مكان الازرار اغلاق تصغير تكبير من اليمين لليسار

---

نظام الويندوز هو الذي يوفر لك هذه الخاصية , لذا فالأحرى بدلفي أن تكون قادرة على عمل ذلك .

CIONO1

تم تعديل هذه المشاركة بواسطة tmaaa في 30 ديسمبر 2003 في 00:00

هناك حتى الأحلام أصبحت ممنوعة ...

إنه لعار أن ننتمي لهكذا أوطان ... لكن ... ربما العار أن نكون نحن أبناء لتلكم أوطان .. من يدري ؟!!

ليعلم أولئك ... إنّ الشعوب إنْ هي استيقظت تسحق ظُلامََهَا ...

There, even in dreams u r wanted

To be a programmer, how a nice dream it was

Leaving ...

أعيدوا لإسمي لونه المفضل

#4

قلب النافذة Mirror لا ينفع في الدلفي بسبب مشكلة فيها حتى ميكرو سوفت استغنت عن استعمالها

استعمال InvalidateRect لانعاش رسوميات الـ Non Client لا ينفع

فقط في داخل النافذة

استعمل SetWindowPos

الـ Label النقطتين

استعمل BidiMode لقلب الاتجاه

وهي موجودة من دلفي 4 و فوق

إذا سائت الامور ادرج محارف التحكم قبل الجملة #0254 #0253

محمد زاهر ديركي ، أبو عمر

بسم الله الرحمن الرحيم

كَبُرَ مَقْتًا عِنْدَ اللَّهِ أَنْ تَقُولُوا مَا لَا تَفْعَلُونَ (3) سورة الصف

#5

بالنسبة لموضوع Labels : (الذي وضع فية الإسم )

فهي بسيطة جدا جدا ... كما قال الأخ زاهر

إستخدم الخاصة BidiMode=RighttoLeft .....

أ

#6

شكراً لكم جميعاً وكل عام وأنتم بخير..

لقد جربت الكود بالأمس وكان ممتازاً

تخيل أنه استطاع أيضاً تغيير مكان أزرار تصغير وتكبير إلى اليمين.. أصبحت الفورم عربية تماماً كما في الصورة الملحقة

ولكن هناك مشكلة واحدة الآن

الشيء الوحيد الذي لم يتحول هو الـ comboBox وكذلك ListBox وعلى ما أعتقد ListView فالـ scrollBar لازال على الجانب الأيسر والكتابة لازالت تقرأت من اليسار إلى اليمين وليس من اليمين إلى اليسار

والأسوأ أنني عندما أضغط على comboBox لإظهر القائمة فإن خطاً أسوداً فقط هو الذي يظهر (انظر الصورة الملحقة) وبعد ذلك يختفي عنصر comboBox كلياً عن الفورم!!

أما إذا استخدمت لوحة المفاتيح للتنقل بين محتويات comboBox دون استخدام الماوس فإن المحتويات تظهر وتبقى مشكلة اليمين إلى اليسار.

post-15-1073032793_thumb.jpg

#7

لتسهيل الأمر أرفق البرنامج هنا

arabic.zip

تم تعديل هذه المشاركة بواسطة jrahma في 2 يناير 2004 في 11:42

#8

هذه الخاصية غير مدعومة لتستعمل في الدلفي ، ابتعد عنها

و ما فائدة قلب ازرار الفورم ؟؟؟

محمد زاهر ديركي ، أبو عمر

بسم الله الرحمن الرحيم

كَبُرَ مَقْتًا عِنْدَ اللَّهِ أَنْ تَقُولُوا مَا لَا تَفْعَلُونَ (3) سورة الصف

#9

عزيزي

ولكن قلب أزرار الفورم ليس الأمر المهم الذي أريده

أنا اتحدث عن الـ comboBox وال، listBox

#10

مع الشكر الجزيل للأخ زاهر

هل من أحد يساهم في حل هذه المشكلة رجاء....

آسف على الإلحاح وأعلم أن الأيام هي أيام امتحانات (الله يوفقكم) ولكن البرنامج مستعجل

#11

مالمشكلة

فبمجرد استخدام BidiMode تقلب الـ comboBox والـ listBox

محمد زاهر ديركي ، أبو عمر

بسم الله الرحمن الرحيم

كَبُرَ مَقْتًا عِنْدَ اللَّهِ أَنْ تَقُولُوا مَا لَا تَفْعَلُونَ (3) سورة الصف

#12

ليت الأمر بهذه السهولة..

لولا الكود الذي وضعه الأخ tmaaa لما كانت المسألة حلت بالنسبة لي

ولكن الآن يبقى فقط القائمة المنسدلة combobox كما في الصورة السابقة

فهل من حل؟

#13

السلام عليكم ورحمة الله وبركاته

بالنسبة لـ combobox أو Listbox

كما قال الاخ Zaher

عن طريق BiDiMode

#14

يا ريت الأمر بهذه السهولة

اتمنى يا جماعة أن تجربوا البرنامج الذي وضعته هنا وتنظوا الصورة التي وضعتها أيضاً قبل الرد ، لأن لم أضع البرنامج والصورة إلا لأني كنت متوقعاً هذا الرد..

هذا الموضوع مغلق.

مواضيع مشابهة