اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

نعم يمكنك فعل هذه ، تقدم Tkinter خيارًا يسمى direction، يمكن تعيينه إلى "right-to-left" لتمكين التخطيط من اليمين إلى اليسار. يمكنك تعيين هذا الخيار للتطبيق بأكمله أو لعناصر واجهة المستخدم الفردية

root = tk.Tk()
root.option_add('*Ttk*direction', 'rtl')  # تعيين الاتجاه لجميع عناصر ttk


إذا كنت ترغب في تعيينه لعناصر محددة، قم بتبديل *Ttk* بالاسم الأسلوب المناسب (على سبيل المثال، *TButton*direction).

مثال على استخدام "CustomTkinter"

 

import CustomTkinter as ctk

root = ctk.CustomTk()
root.option_add('*Ttk*direction', 'rtl') 

 

  • 0
نشر
بتاريخ 3 ساعة قال كمال احمد2:

نعم يمكنك فعل هذه ، تقدم Tkinter خيارًا يسمى direction، يمكن تعيينه إلى "right-to-left" لتمكين التخطيط من اليمين إلى اليسار. يمكنك تعيين هذا الخيار للتطبيق بأكمله أو لعناصر واجهة المستخدم الفردية

root = tk.Tk()
root.option_add('*Ttk*direction', 'rtl')  # تعيين الاتجاه لجميع عناصر ttk


إذا كنت ترغب في تعيينه لعناصر محددة، قم بتبديل *Ttk* بالاسم الأسلوب المناسب (على سبيل المثال، *TButton*direction).

مثال على استخدام "CustomTkinter"

 

import CustomTkinter as ctk

root = ctk.CustomTk()
root.option_add('*Ttk*direction', 'rtl') 

 

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

import customtkinter as ctk
import tkinter as tk
from tkinter import ttk
class App(ctk.CTk,tk.Tk):
    def __init__(self):
        super().__init__()
        ctk.set_appearance_mode("dark")
        ctk.set_default_color_theme("green")
        self.option_add('*Ttk*direction', 'rtl')
        self.Button1 = ctk.CTkButton(self, text="فتح") 
        self.Button1.grid(row=0, column=0, pady=(5, 5),padx=(5, 5), sticky="e")
        
app = App()
app.mainloop()        

عند التنفيذ يظهر Button ناحية اليسار

  • 0
نشر

لا يوجد دعم رسمي لـ rtl في ملف tkinter الافتراضي. لنقل النص إلى اليمين فقط، يمكنك استخدام justify="right". و ايضا يجب استخدام مكون إضافي مثل "add_bidi_support"

اولا يجب عمل تثبيت ل awesometkinter

باستخدام هذه الامر :  pip install awesometkinter

بعد استخدام    justify="right" سوف نرى ان الزر تم نقل الي اليمين و لكن النص العربي غير مفهوم 

 

Screenshot_2024-01-27_21_09_17.thumb.png.8a2b604a932ed6465a92b79ee53e2c72.png

ولكن بعد استخدام add_bidi_support

Screenshot_2024-01-27_21_13_02.thumb.png.42b18270368e69c8c972956e65e35121.png

هذه الكود الخاص بك بعد التعديل : 

import customtkinter as ctk
import tkinter as tk
from tkinter import ttk
from awesometkinter.bidirender import add_bidi_support

class CustomEntry(tk.Entry):
    def __init__(self, master=None, **kwargs):
        tk.Entry.__init__(self, master, **kwargs)

class App(ctk.CTk, tk.Tk):
    def __init__(self):
        super().__init__()
        ctk.set_appearance_mode("dark")
        ctk.set_default_color_theme("green")


        self.Entry1 = CustomEntry(self, font=('any', 20), justify='right')
        add_bidi_support(self.Entry1)
        self.Entry1.grid(row=1, column=0, pady=(5, 5), padx=(5, 5), sticky="e")

        self.Button1 = ctk.CTkButton(self, text="فتح") 
        self.Button1.grid(row=0, column=1, pady=(5, 5), padx=(5, 5), sticky="e")

        

app = App()
app.mainloop()

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...