Python PyQt 5 kodunda sorun var

Hears

Decapat
Katılım
9 Haziran 2023
Mesajlar
36
Daha fazla  
Cinsiyet
Erkek
Aşağıda vermiş olduğum kodda ayarlar menusunden dil seçince çalışmıyor. Bunu çalışır hale getirmek istiyorum ancak Python'da o kadar bilgim yok. Yapay zeka ise saçmalayıp kodumu bozuk kafasına göre iş yapıyor. Yardımcı olur musunuz? Dil ayarlarını nasıl çalışır hale getirebilirim?
 
Aşağıda vermiş olduğum kodda ayarlar menusunden dil seçince çalışmıyor. Bunu çalışır hale getirmek istiyorum ancak Python'da o kadar bilgim yok. Yapay zeka ise saçmalayıp kodumu bozuk kafasına göre iş yapıyor. Yardımcı olur musunuz? Dil ayarlarını nasıl çalışır hale getirebilirim?
Kodu görebilirsem yardımcı olmaya çalışırım.
 
Kodu görebilirsem yardımcı olmaya çalışırım.

Hemen atıyorum.

@Hears
1-) Kod yok.
2-) Tam olarak anlatamamışsınız derdinizi.

Hemen atıyorum.

Kod:
import sys
from PyQt5.QtWidgets import (
    QApplication, QWidget, QVBoxLayout, QHBoxLayout,
    QPushButton, QLabel, QStackedWidget, QListWidget, QComboBox
)
from PyQt5.QtCore import Qt, QTimer, QUrl
from PyQt5.QtGui import QFont, QColor
from PyQt5.Qt import QDesktopServices  # Web sayfasını açmak için gerekli


class FPSBoosterApp(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("Revorce Gaming")
        self.setFixedSize(1000, 600)
        self.setStyleSheet("background-color: #1F1F1F;")

        main_layout = QHBoxLayout()
        self.setLayout(main_layout)

        self.menu = QListWidget()
        self.menu.setFixedWidth(200)
        self.menu.setStyleSheet("""
            QListWidget {
                background-color: #2A2A2A;
                border: none;
                color: #FFFFFF;
                font-size: 16px;
            }
            QListWidget::item {
                padding: 10px;
            }
            QListWidget::item:selected {
                background-color: #00FF00;
                outline: none;
            }
            QListWidget::item:hover {
                background-color: #00CC00;
                outline: none;
            }
        """)
        self.menu.addItems(["FPS Optimizer", "Network Optimizer", "Reactivity Boost", "Cleanup Tool", "Ultra Performance", "Ayarlar"])
        self.menu.item(4).setForeground(QColor(255, 0, 0))

        options_label = QLabel("Revorce Gaming")
        options_label.setAlignment(Qt.AlignCenter)
        options_label.setStyleSheet("color: #00FF00; font-size: 24px; margin: 10px;")

        left_layout = QVBoxLayout()
        left_layout.addWidget(options_label)
        left_layout.addWidget(self.menu)

        main_layout.addLayout(left_layout)

        self.content_area = QStackedWidget()
        main_layout.addWidget(self.content_area)

        self.selected_menu_label = QLabel("Seçilen: FPS Optimizer")
        self.selected_menu_label.setAlignment(Qt.AlignCenter)
        self.selected_menu_label.setStyleSheet("color: #FFFFFF; font-size: 18px; margin: 5px;")

        # Menüler için sayfaları oluşturma
        self.create_page("FPS Optimizer", "Yüksek FPS ile rakiplerinizi geride bırakın!")
        self.create_page("Network Optimizer", "İnternet Hızınızı zirveye taşıyın!")
        self.create_page("Reactivity Boost", "Tepki sürenizi anında azaltın, oyun dünyasında hız kazanın!")
        self.create_page("Cleanup Tool", "Sistem temizliğiyle performansınızı canlandırın ve hızı hissedin!")
        self.create_page("Ultra Performance", "Ultra Performance Teknolojisi İle Bilgisayarınızı Zirveye Taşıyın!", is_last=True)
        self.create_settings_page()  # Ayarlar sayfasını oluştur

        self.menu.currentItemChanged.connect(self.change_page)

    def create_page(self, title, description, is_last=False):
        page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel(title)
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 10px 0;")
        title_label.setFont(QFont("Lexend", 24))

        description_label = QLabel(description)
        description_label.setAlignment(Qt.AlignCenter)
        description_label.setStyleSheet("color: #FFFFFF; font-size: 22px; margin: 70px 0;")

        fps_button = QPushButton("Başlat")
        fps_button.setFixedSize(450, 60)
        fps_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 22px;
                border: none;
                border-radius: 12px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                box-shadow: 0 4px 10px rgba(0, 255, 0, 0.4);
            }
            QPushButton:hover {
                background-color: #66FF66;
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(102, 255, 102, 0.9);
                filter: brightness(1.1);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: #007700;
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(0, 255, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)

        layout.addWidget(title_label)
        layout.addWidget(description_label, alignment=Qt.AlignCenter)
        layout.addStretch()
        layout.addWidget(fps_button, alignment=Qt.AlignCenter)
        layout.addStretch()

        selected_label = QLabel(f"Seçilen: {title}")
        selected_label.setAlignment(Qt.AlignBottom | Qt.AlignCenter)
        selected_label.setStyleSheet("color: #FFFFFF; font-size: 17px; margin: 5px;")
        layout.addWidget(selected_label)

        fps_button.clicked.connect(lambda: self.start_loading(title))

        page.setLayout(layout)
        self.content_area.addWidget(page)

        if title == "Ultra Performance":
            title_label.setStyleSheet("color: #FF0000; font-size: 30px; margin: 10px 0;")
            description_label.setStyleSheet("color: #FF0000; font-size: 22px; margin: 70px 0;")
            fps_button.setStyleSheet("""
                QPushButton {
                    background-color: #FF0000;
                    color: #FFFFFF;
                    font-size: 22px;
                    border: none;
                    border-radius: 12px;
                    transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                    box-shadow: 0 4px 10px rgba(255, 0, 0, 0.4);
                }
                QPushButton:hover {
                    background-color: #FF6666;
                    transform: scale(1.05);
                    box-shadow: 0 8px 20px rgba(255, 102, 102, 0.9);
                    filter: brightness(1.1);
                    border: 2px solid #FFFFFF;
                }
                QPushButton:pressed {
                    background-color: #770000;
                    transform: scale(0.95);
                    box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
                }
                QPushButton:focus {
                    outline: none;
                }
            """)

    def create_settings_page(self):
        """Ayarlar sayfasını oluşturur."""
        settings_page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel("Ayarlar")
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px 0;")
        layout.addWidget(title_label)

        # Dil seçimi
        language_layout = QHBoxLayout()
        language_label = QLabel("Dil Seçimi:")
        language_label.setStyleSheet("color: #FFFFFF; font-size: 20px;")
        # Dil seçimi etiketinin genişliğini sınırlandırmadık, böylece genişleyebilir
        # Aynı zamanda hizalamayı da düzenledik
        self.language_combo = QComboBox()  # Değişken olarak tanımlandı
        self.language_combo.addItems(["Türkçe", "İngilizce", "Almanca", "Fransızca", "İspanyolca"])
        self.language_combo.setFixedWidth(620)
        self.language_combo.setStyleSheet("""
            QComboBox {
                background-color: #2A2A2A;
                color: #ffffff;
                padding: 10px;
                border-radius: 7px;
                font-size: 18px;
            }
            QComboBox::drop-down {
                background-color: #2A2A2A;
                border: none;
            }
        """)

        # Dil seçimi etiketini ve combobox'u genişletmek için esneme ekliyoruz
        language_layout.addStretch()
        language_layout.addWidget(language_label)
        language_layout.addWidget(self.language_combo)
        language_layout.addStretch()
        layout.addLayout(language_layout)

        # Web Sitesi Butonu
        website_button = QPushButton("Yardım/Bilgi/Destek")
        website_button.setFixedSize(620, 40)  # Butonun boyutunu uzattık
        website_button.setStyleSheet("""
            QPushButton {
                background-color: transparent;
                color: #FF0000;
                font-size: 18px;
                border: 2px solid #FF0000;
                border-radius: 7px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
            }
            QPushButton:hover {
                background-color: rgba(255, 0, 0, 0.1);
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(255, 0, 0, 0.9);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: rgba(255, 0, 0, 0.2);
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)
        website_button.clicked.connect(self.open_website)  # Buton tıklandığında web sitesi açılır
        layout.addWidget(website_button, alignment=Qt.AlignCenter)

        # Kaydet butonu
        save_button = QPushButton("Kaydet")
        save_button.setFixedSize(500, 50)
        save_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 18px;
                border: none;
                border-radius: 7px;
            }
            QPushButton:hover {
                background-color: #66FF66;
            }
            QPushButton:pressed {
                background-color: #007700;
            }
        """)
        save_button.clicked.connect(self.save_settings)  # Kaydet butonuna metodu bağlama
        layout.addWidget(save_button, alignment=Qt.AlignCenter)

        settings_page.setLayout(layout)
        self.content_area.addWidget(settings_page)

    def open_website(self):
        """Butona tıklandığında web sitesini açar."""
        QDesktopServices.openUrl(QUrl("http://www.clasare.com.tr"))

    def save_settings(self):
        language = self.language_combo.currentText()
        print(f"Ayarlar kaydedildi! Dil: {language}")  # Ayarları terminalde loglama

    def change_page(self):
        current_item = self.menu.currentItem()
        if current_item:
            index = self.menu.row(current_item)
            self.content_area.setCurrentIndex(index)

    def start_loading(self, title):
        loading_page = QWidget()
        loading_layout = QVBoxLayout()

        loading_label = QLabel("Lütfen Bekleyin...")
        loading_label.setAlignment(Qt.AlignCenter)
        loading_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px;")

        loading_layout.addWidget(loading_label)
        loading_page.setLayout(loading_layout)

        self.content_area.addWidget(loading_page)
        self.content_area.setCurrentWidget(loading_page)

        # 11 saniye bekledikten sonra işlemi bitir
        QTimer.singleShot(11000, lambda: self.finish_loading(title))

    def finish_loading(self, title):
        # Ultra Performance menüsü için özel mesaj
        if title == "Ultra Performance":
            ultra_page = QWidget()
            ultra_layout = QVBoxLayout()

            ultra_label = QLabel("U L T R A  P E R F O R M A N C E  O N")
            ultra_label.setAlignment(Qt.AlignCenter)
            ultra_label.setStyleSheet("color: #FF0000; font-size: 40px; margin: 20px;")

            ultra_layout.addWidget(ultra_label)
            ultra_page.setLayout(ultra_layout)

            self.content_area.addWidget(ultra_page)
            self.content_area.setCurrentWidget(ultra_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))
        else:
            # İşlem Tamamlandı mesajı gösterme
            completed_page = QWidget()
            completed_layout = QVBoxLayout()

            completed_label = QLabel("İşlem Tamamlandı!")
            completed_label.setAlignment(Qt.AlignCenter)
            completed_label.setStyleSheet("color: #00FF00; font-size: 30px; margin: 20px;")

            completed_layout.addWidget(completed_label)
            completed_page.setLayout(completed_layout)

            self.content_area.addWidget(completed_page)
            self.content_area.setCurrentWidget(completed_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))


if __name__ == "__main__":
    app = QApplication(sys.argv)
    main_window = FPSBoosterApp()
    main_window.show()
    sys.exit(app.exec_())
 
Hemen atıyorum.



Hemen atıyorum.

Kod:
import sys
from PyQt5.QtWidgets import (
    QApplication, QWidget, QVBoxLayout, QHBoxLayout,
    QPushButton, QLabel, QStackedWidget, QListWidget, QComboBox
)
from PyQt5.QtCore import Qt, QTimer, QUrl
from PyQt5.QtGui import QFont, QColor
from PyQt5.Qt import QDesktopServices  # Web sayfasını açmak için gerekli


class FPSBoosterApp(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("Revorce Gaming")
        self.setFixedSize(1000, 600)
        self.setStyleSheet("background-color: #1F1F1F;")

        main_layout = QHBoxLayout()
        self.setLayout(main_layout)

        self.menu = QListWidget()
        self.menu.setFixedWidth(200)
        self.menu.setStyleSheet("""
            QListWidget {
                background-color: #2A2A2A;
                border: none;
                color: #FFFFFF;
                font-size: 16px;
            }
            QListWidget::item {
                padding: 10px;
            }
            QListWidget::item:selected {
                background-color: #00FF00;
                outline: none;
            }
            QListWidget::item:hover {
                background-color: #00CC00;
                outline: none;
            }
        """)
        self.menu.addItems(["FPS Optimizer", "Network Optimizer", "Reactivity Boost", "Cleanup Tool", "Ultra Performance", "Ayarlar"])
        self.menu.item(4).setForeground(QColor(255, 0, 0))

        options_label = QLabel("Revorce Gaming")
        options_label.setAlignment(Qt.AlignCenter)
        options_label.setStyleSheet("color: #00FF00; font-size: 24px; margin: 10px;")

        left_layout = QVBoxLayout()
        left_layout.addWidget(options_label)
        left_layout.addWidget(self.menu)

        main_layout.addLayout(left_layout)

        self.content_area = QStackedWidget()
        main_layout.addWidget(self.content_area)

        self.selected_menu_label = QLabel("Seçilen: FPS Optimizer")
        self.selected_menu_label.setAlignment(Qt.AlignCenter)
        self.selected_menu_label.setStyleSheet("color: #FFFFFF; font-size: 18px; margin: 5px;")

        # Menüler için sayfaları oluşturma
        self.create_page("FPS Optimizer", "Yüksek FPS ile rakiplerinizi geride bırakın!")
        self.create_page("Network Optimizer", "İnternet Hızınızı zirveye taşıyın!")
        self.create_page("Reactivity Boost", "Tepki sürenizi anında azaltın, oyun dünyasında hız kazanın!")
        self.create_page("Cleanup Tool", "Sistem temizliğiyle performansınızı canlandırın ve hızı hissedin!")
        self.create_page("Ultra Performance", "Ultra Performance Teknolojisi İle Bilgisayarınızı Zirveye Taşıyın!", is_last=True)
        self.create_settings_page()  # Ayarlar sayfasını oluştur

        self.menu.currentItemChanged.connect(self.change_page)

    def create_page(self, title, description, is_last=False):
        page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel(title)
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 10px 0;")
        title_label.setFont(QFont("Lexend", 24))

        description_label = QLabel(description)
        description_label.setAlignment(Qt.AlignCenter)
        description_label.setStyleSheet("color: #FFFFFF; font-size: 22px; margin: 70px 0;")

        fps_button = QPushButton("Başlat")
        fps_button.setFixedSize(450, 60)
        fps_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 22px;
                border: none;
                border-radius: 12px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                box-shadow: 0 4px 10px rgba(0, 255, 0, 0.4);
            }
            QPushButton:hover {
                background-color: #66FF66;
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(102, 255, 102, 0.9);
                filter: brightness(1.1);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: #007700;
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(0, 255, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)

        layout.addWidget(title_label)
        layout.addWidget(description_label, alignment=Qt.AlignCenter)
        layout.addStretch()
        layout.addWidget(fps_button, alignment=Qt.AlignCenter)
        layout.addStretch()

        selected_label = QLabel(f"Seçilen: {title}")
        selected_label.setAlignment(Qt.AlignBottom | Qt.AlignCenter)
        selected_label.setStyleSheet("color: #FFFFFF; font-size: 17px; margin: 5px;")
        layout.addWidget(selected_label)

        fps_button.clicked.connect(lambda: self.start_loading(title))

        page.setLayout(layout)
        self.content_area.addWidget(page)

        if title == "Ultra Performance":
            title_label.setStyleSheet("color: #FF0000; font-size: 30px; margin: 10px 0;")
            description_label.setStyleSheet("color: #FF0000; font-size: 22px; margin: 70px 0;")
            fps_button.setStyleSheet("""
                QPushButton {
                    background-color: #FF0000;
                    color: #FFFFFF;
                    font-size: 22px;
                    border: none;
                    border-radius: 12px;
                    transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                    box-shadow: 0 4px 10px rgba(255, 0, 0, 0.4);
                }
                QPushButton:hover {
                    background-color: #FF6666;
                    transform: scale(1.05);
                    box-shadow: 0 8px 20px rgba(255, 102, 102, 0.9);
                    filter: brightness(1.1);
                    border: 2px solid #FFFFFF;
                }
                QPushButton:pressed {
                    background-color: #770000;
                    transform: scale(0.95);
                    box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
                }
                QPushButton:focus {
                    outline: none;
                }
            """)

    def create_settings_page(self):
        """Ayarlar sayfasını oluşturur."""
        settings_page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel("Ayarlar")
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px 0;")
        layout.addWidget(title_label)

        # Dil seçimi
        language_layout = QHBoxLayout()
        language_label = QLabel("Dil Seçimi:")
        language_label.setStyleSheet("color: #FFFFFF; font-size: 20px;")
        # Dil seçimi etiketinin genişliğini sınırlandırmadık, böylece genişleyebilir
        # Aynı zamanda hizalamayı da düzenledik
        self.language_combo = QComboBox()  # Değişken olarak tanımlandı
        self.language_combo.addItems(["Türkçe", "İngilizce", "Almanca", "Fransızca", "İspanyolca"])
        self.language_combo.setFixedWidth(620)
        self.language_combo.setStyleSheet("""
            QComboBox {
                background-color: #2A2A2A;
                color: #ffffff;
                padding: 10px;
                border-radius: 7px;
                font-size: 18px;
            }
            QComboBox::drop-down {
                background-color: #2A2A2A;
                border: none;
            }
        """)

        # Dil seçimi etiketini ve combobox'u genişletmek için esneme ekliyoruz
        language_layout.addStretch()
        language_layout.addWidget(language_label)
        language_layout.addWidget(self.language_combo)
        language_layout.addStretch()
        layout.addLayout(language_layout)

        # Web Sitesi Butonu
        website_button = QPushButton("Yardım/Bilgi/Destek")
        website_button.setFixedSize(620, 40)  # Butonun boyutunu uzattık
        website_button.setStyleSheet("""
            QPushButton {
                background-color: transparent;
                color: #FF0000;
                font-size: 18px;
                border: 2px solid #FF0000;
                border-radius: 7px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
            }
            QPushButton:hover {
                background-color: rgba(255, 0, 0, 0.1);
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(255, 0, 0, 0.9);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: rgba(255, 0, 0, 0.2);
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)
        website_button.clicked.connect(self.open_website)  # Buton tıklandığında web sitesi açılır
        layout.addWidget(website_button, alignment=Qt.AlignCenter)

        # Kaydet butonu
        save_button = QPushButton("Kaydet")
        save_button.setFixedSize(500, 50)
        save_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 18px;
                border: none;
                border-radius: 7px;
            }
            QPushButton:hover {
                background-color: #66FF66;
            }
            QPushButton:pressed {
                background-color: #007700;
            }
        """)
        save_button.clicked.connect(self.save_settings)  # Kaydet butonuna metodu bağlama
        layout.addWidget(save_button, alignment=Qt.AlignCenter)

        settings_page.setLayout(layout)
        self.content_area.addWidget(settings_page)

    def open_website(self):
        """Butona tıklandığında web sitesini açar."""
        QDesktopServices.openUrl(QUrl("http://www.clasare.com.tr"))

    def save_settings(self):
        language = self.language_combo.currentText()
        print(f"Ayarlar kaydedildi! Dil: {language}")  # Ayarları terminalde loglama

    def change_page(self):
        current_item = self.menu.currentItem()
        if current_item:
            index = self.menu.row(current_item)
            self.content_area.setCurrentIndex(index)

    def start_loading(self, title):
        loading_page = QWidget()
        loading_layout = QVBoxLayout()

        loading_label = QLabel("Lütfen Bekleyin...")
        loading_label.setAlignment(Qt.AlignCenter)
        loading_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px;")

        loading_layout.addWidget(loading_label)
        loading_page.setLayout(loading_layout)

        self.content_area.addWidget(loading_page)
        self.content_area.setCurrentWidget(loading_page)

        # 11 saniye bekledikten sonra işlemi bitir
        QTimer.singleShot(11000, lambda: self.finish_loading(title))

    def finish_loading(self, title):
        # Ultra Performance menüsü için özel mesaj
        if title == "Ultra Performance":
            ultra_page = QWidget()
            ultra_layout = QVBoxLayout()

            ultra_label = QLabel("U L T R A  P E R F O R M A N C E  O N")
            ultra_label.setAlignment(Qt.AlignCenter)
            ultra_label.setStyleSheet("color: #FF0000; font-size: 40px; margin: 20px;")

            ultra_layout.addWidget(ultra_label)
            ultra_page.setLayout(ultra_layout)

            self.content_area.addWidget(ultra_page)
            self.content_area.setCurrentWidget(ultra_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))
        else:
            # İşlem Tamamlandı mesajı gösterme
            completed_page = QWidget()
            completed_layout = QVBoxLayout()

            completed_label = QLabel("İşlem Tamamlandı!")
            completed_label.setAlignment(Qt.AlignCenter)
            completed_label.setStyleSheet("color: #00FF00; font-size: 30px; margin: 20px;")

            completed_layout.addWidget(completed_label)
            completed_page.setLayout(completed_layout)

            self.content_area.addWidget(completed_page)
            self.content_area.setCurrentWidget(completed_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))


if __name__ == "__main__":
    app = QApplication(sys.argv)
    main_window = FPSBoosterApp()
    main_window.show()
    sys.exit(app.exec_())
Kodda bir hata göremiyorum problem nedir ?

Aşağıda vermiş olduğum kodda ayarlar menusunden dil seçince çalışmıyor. Bunu çalışır hale getirmek istiyorum ancak Python'da o kadar bilgim yok. Yapay zeka ise saçmalayıp kodumu bozuk kafasına göre iş yapıyor. Yardımcı olur musunuz? Dil ayarlarını nasıl çalışır hale getirebilirim?
Dilin değişmeme sebebi kodunda türkçe için yer vermişsin ancak diğer dillerin sadace ismine yer vermişsin. Örnek bir json dosyası içerisinde kolayca yapabilirsin. Ufak bir araştırma yeterli.
 
Kodda bir hata göremiyorum problem nedir ?


Dilin değişmeme sebebi kodunda türkçe için yer vermişsin ancak diğer dillerin sadace ismine yer vermişsin. Örnek bir json dosyası içerisinde kolayca yapabilirsin. Ufak bir araştırma yeterli.
Python:
import sys
from PyQt5.QtWidgets import (
    QApplication, QWidget, QVBoxLayout, QHBoxLayout,
    QPushButton, QLabel, QStackedWidget, QListWidget, QComboBox
)
from PyQt5.QtCore import Qt, QTimer, QUrl
from PyQt5.QtGui import QFont, QColor
from PyQt5.Qt import QDesktopServices  # Web sayfasını açmak için gerekli


class FPSBoosterApp(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("Revorce Gaming")
        self.setFixedSize(1000, 600)
        self.setStyleSheet("background-color: #1F1F1F;")

        main_layout = QHBoxLayout()
        self.setLayout(main_layout)

        self.menu = QListWidget()
        self.menu.setFixedWidth(200)
        self.menu.setStyleSheet("""
            QListWidget {
                background-color: #2A2A2A;
                border: none;
                color: #FFFFFF;
                font-size: 16px;
            }
            QListWidget::item {
                padding: 10px;
            }
            QListWidget::item:selected {
                background-color: #00FF00;
                outline: none;
            }
            QListWidget::item:hover {
                background-color: #00CC00;
                outline: none;
            }
        """)
        
        self.translations = {
            "Türkçe": {
                "FPS Optimizer": "FPS Optimize Edici",
                "Network Optimizer": "Ağ Optimize Edici",
                "Reactivity Boost": "Tepki Süresi Arttırıcı",
                "Cleanup Tool": "Temizleme Aracı",
                "Ultra Performance": "Ultra Performans",
                "Başlat": "Başlat",
                "Ayarlar": "Ayarlar",
                "Seçilen: ": "Seçilen: ",
                "Dil Seçimi:": "Dil Seçimi:",
                "Kaydet": "Kaydet",
                "İşlem Tamamlandı!": "İşlem Tamamlandı!"
            },
            "İngilizce": {
                "FPS Optimizer": "FPS Optimizer",
                "Network Optimizer": "Network Optimizer",
                "Reactivity Boost": "Reactivity Boost",
                "Cleanup Tool": "Cleanup Tool",
                "Ultra Performance": "Ultra Performance",
                "Başlat": "Start",
                "Ayarlar": "Settings",
                "Seçilen: ": "Selected: ",
                "Dil Seçimi:": "Language Selection:",
                "Kaydet": "Save",
                "İşlem Tamamlandı!": "Operation Completed!"
            },
            "Almanca": {
                "FPS Optimizer": "FPS Optimierer",
                "Network Optimizer": "Netzwerk Optimierer",
                "Reactivity Boost": "Reaktionsfähigkeit verbessern",
                "Cleanup Tool": "Bereinigungswerkzeug",
                "Ultra Performance": "Ultra Leistung",
                "Başlat": "Start",
                "Ayarlar": "Einstellungen",
                "Seçilen: ": "Ausgewählt: ",
                "Dil Seçimi:": "Sprachauswahl:",
                "Kaydet": "Speichern",
                "İşlem Tamamlandı!": "Vorgang abgeschlossen!"
            }
        }

        self.menu = QListWidget()
        self.menu.setFixedWidth(200)
        self.menu.setStyleSheet("""
            QListWidget {
                background-color: #2A2A2A;
                border: none;
                color: #FFFFFF;
                font-size: 16px;
            }
            QListWidget::item {
                padding: 10px;
            }
            QListWidget::item:selected {
                background-color: #00FF00;
                outline: none;
            }
            QListWidget::item:hover {
                background-color: #00CC00;
                outline: none;
            }
        """)
        
        self.menu.addItems(["FPS Optimizer", "Network Optimizer", "Reactivity Boost", "Cleanup Tool", "Ultra Performance", "Ayarlar"])
        self.menu.item(4).setForeground(QColor(255, 0, 0))

        options_label = QLabel("Revorce Gaming")
        options_label.setAlignment(Qt.AlignCenter)
        options_label.setStyleSheet("color: #00FF00; font-size: 24px; margin: 10px;")

        left_layout = QVBoxLayout()
        left_layout.addWidget(options_label)
        left_layout.addWidget(self.menu)

        main_layout.addLayout(left_layout)

        self.content_area = QStackedWidget()
        main_layout.addWidget(self.content_area)

        self.selected_menu_label = QLabel("Seçilen: FPS Optimizer")
        self.selected_menu_label.setAlignment(Qt.AlignCenter)
        self.selected_menu_label.setStyleSheet("color: #FFFFFF; font-size: 18px; margin: 5px;")

        # Menüler için sayfaları oluşturma
        self.create_page("FPS Optimizer", "Yüksek FPS ile rakiplerinizi geride bırakın!")
        self.create_page("Network Optimizer", "İnternet Hızınızı zirveye taşıyın!")
        self.create_page("Reactivity Boost", "Tepki sürenizi anında azaltın, oyun dünyasında hız kazanın!")
        self.create_page("Cleanup Tool", "Sistem temizliğiyle performansınızı canlandırın ve hızı hissedin!")
        self.create_page("Ultra Performance", "Ultra Performance Teknolojisi İle Bilgisayarınızı Zirveye Taşıyın!", is_last=True)
        self.create_settings_page()  # Ayarlar sayfasını oluştur

        self.menu.currentItemChanged.connect(self.change_page)

    def create_page(self, title, description, is_last=False):
        page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel(title)
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 10px 0;")
        title_label.setFont(QFont("Lexend", 24))

        description_label = QLabel(description)
        description_label.setAlignment(Qt.AlignCenter)
        description_label.setStyleSheet("color: #FFFFFF; font-size: 22px; margin: 70px 0;")

        fps_button = QPushButton("Başlat")
        fps_button.setFixedSize(450, 60)
        fps_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 22px;
                border: none;
                border-radius: 12px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                box-shadow: 0 4px 10px rgba(0, 255, 0, 0.4);
            }
            QPushButton:hover {
                background-color: #66FF66;
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(102, 255, 102, 0.9);
                filter: brightness(1.1);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: #007700;
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(0, 255, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)

        layout.addWidget(title_label)
        layout.addWidget(description_label, alignment=Qt.AlignCenter)
        layout.addStretch()
        layout.addWidget(fps_button, alignment=Qt.AlignCenter)
        layout.addStretch()

        selected_label = QLabel(f"Seçilen: {title}")
        selected_label.setAlignment(Qt.AlignBottom | Qt.AlignCenter)
        selected_label.setStyleSheet("color: #FFFFFF; font-size: 17px; margin: 5px;")
        layout.addWidget(selected_label)

        fps_button.clicked.connect(lambda: self.start_loading(title))

        page.setLayout(layout)
        self.content_area.addWidget(page)

        if title == "Ultra Performance":
            title_label.setStyleSheet("color: #FF0000; font-size: 30px; margin: 10px 0;")
            description_label.setStyleSheet("color: #FF0000; font-size: 22px; margin: 70px 0;")
            fps_button.setStyleSheet("""
                QPushButton {
                    background-color: #FF0000;
                    color: #FFFFFF;
                    font-size: 22px;
                    border: none;
                    border-radius: 12px;
                    transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                    box-shadow: 0 4px 10px rgba(255, 0, 0, 0.4);
                }
                QPushButton:hover {
                    background-color: #FF6666;
                    transform: scale(1.05);
                    box-shadow: 0 8px 20px rgba(255, 102, 102, 0.9);
                    filter: brightness(1.1);
                    border: 2px solid #FFFFFF;
                }
                QPushButton:pressed {
                    background-color: #770000;
                    transform: scale(0.95);
                    box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
                }
                QPushButton:focus {
                    outline: none;
                }
            """)

    def create_settings_page(self):
        """Ayarlar sayfasını oluşturur."""
        settings_page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel("Ayarlar")
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px 0;")
        layout.addWidget(title_label)

        # Dil seçimi
        language_layout = QHBoxLayout()
        language_label = QLabel("Dil Seçimi:")
        language_label.setStyleSheet("color: #FFFFFF; font-size: 20px;")
        # Dil seçimi etiketinin genişliğini sınırlandırmadık, böylece genişleyebilir
        # Aynı zamanda hizalamayı da düzenledik
        self.language_combo = QComboBox()  # Değişken olarak tanımlandı
        self.language_combo.addItems(["Türkçe", "İngilizce", "Almanca", "Fransızca", "İspanyolca"])
        self.language_combo.setFixedWidth(620)
        self.language_combo.setStyleSheet("""
            QComboBox {
                background-color: #2A2A2A;
                color: #ffffff;
                padding: 10px;
                border-radius: 7px;
                font-size: 18px;
            }
            QComboBox::drop-down {
                background-color: #2A2A2A;
                border: none;
            }
        """)

        # Dil seçimi etiketini ve combobox'u genişletmek için esneme ekliyoruz
        language_layout.addStretch()
        language_layout.addWidget(language_label)
        language_layout.addWidget(self.language_combo)
        language_layout.addStretch()
        layout.addLayout(language_layout)

        # Web Sitesi Butonu
        website_button = QPushButton("Yardım/Bilgi/Destek")
        website_button.setFixedSize(620, 40)  # Butonun boyutunu uzattık
        website_button.setStyleSheet("""
            QPushButton {
                background-color: transparent;
                color: #FF0000;
                font-size: 18px;
                border: 2px solid #FF0000;
                border-radius: 7px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
            }
            QPushButton:hover {
                background-color: rgba(255, 0, 0, 0.1);
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(255, 0, 0, 0.9);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: rgba(255, 0, 0, 0.2);
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)
        website_button.clicked.connect(self.open_website)  # Buton tıklandığında web sitesi açılır
        layout.addWidget(website_button, alignment=Qt.AlignCenter)

        # Kaydet butonu
        save_button = QPushButton("Kaydet")
        save_button.setFixedSize(500, 50)
        save_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 18px;
                border: none;
                border-radius: 7px;
            }
            QPushButton:hover {
                background-color: #66FF66;
            }
            QPushButton:pressed {
                background-color: #007700;
            }
        """)
        save_button.clicked.connect(self.save_settings)  # Kaydet butonuna metodu bağlama
        layout.addWidget(save_button, alignment=Qt.AlignCenter)

        settings_page.setLayout(layout)
        self.content_area.addWidget(settings_page)

    def open_website(self):
        """Butona tıklandığında web sitesini açar."""
        QDesktopServices.openUrl(QUrl("http://www.clasare.com.tr"))

    def save_settings(self):
        language = self.language_combo.currentText()
        print(f"Ayarlar kaydedildi! Dil: {language}")  # Ayarları terminalde loglama

    def change_page(self):
        current_item = self.menu.currentItem()
        if current_item:
            index = self.menu.row(current_item)
            self.content_area.setCurrentIndex(index)

    def start_loading(self, title):
        loading_page = QWidget()
        loading_layout = QVBoxLayout()

        loading_label = QLabel("Lütfen Bekleyin...")
        loading_label.setAlignment(Qt.AlignCenter)
        loading_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px;")

        loading_layout.addWidget(loading_label)
        loading_page.setLayout(loading_layout)

        self.content_area.addWidget(loading_page)
        self.content_area.setCurrentWidget(loading_page)

        # 11 saniye bekledikten sonra işlemi bitir
        QTimer.singleShot(11000, lambda: self.finish_loading(title))

    def finish_loading(self, title):
        # Ultra Performance menüsü için özel mesaj
        if title == "Ultra Performance":
            ultra_page = QWidget()
            ultra_layout = QVBoxLayout()

            ultra_label = QLabel("U L T R A  P E R F O R M A N C E  O N")
            ultra_label.setAlignment(Qt.AlignCenter)
            ultra_label.setStyleSheet("color: #FF0000; font-size: 40px; margin: 20px;")

            ultra_layout.addWidget(ultra_label)
            ultra_page.setLayout(ultra_layout)

            self.content_area.addWidget(ultra_page)
            self.content_area.setCurrentWidget(ultra_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))
        else:
            # İşlem Tamamlandı mesajı gösterme
            completed_page = QWidget()
            completed_layout = QVBoxLayout()

            completed_label = QLabel("İşlem Tamamlandı!")
            completed_label.setAlignment(Qt.AlignCenter)
            completed_label.setStyleSheet("color: #00FF00; font-size: 30px; margin: 20px;")

            completed_layout.addWidget(completed_label)
            completed_page.setLayout(completed_layout)

            self.content_area.addWidget(completed_page)
            self.content_area.setCurrentWidget(completed_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))


if __name__ == "__main__":
    app = QApplication(sys.argv)
    main_window = FPSBoosterApp()
    main_window.show()
    sys.exit(app.exec_())

Kodda bir hata göremiyorum problem nedir ?


Dilin değişmeme sebebi kodunda türkçe için yer vermişsin ancak diğer dillerin sadace ismine yer vermişsin. Örnek bir json dosyası içerisinde kolayca yapabilirsin. Ufak bir araştırma yeterli.
Peki yeni attığım kodda neden olmuyor ekledim almanca dillerinin çevirilerini falan.

Python:
import sys
from PyQt5.QtWidgets import (
    QApplication, QWidget, QVBoxLayout, QHBoxLayout,
    QPushButton, QLabel, QStackedWidget, QListWidget, QComboBox
)
from PyQt5.QtCore import Qt, QTimer, QUrl
from PyQt5.QtGui import QFont, QColor
from PyQt5.Qt import QDesktopServices  # Web sayfasını açmak için gerekli


class FPSBoosterApp(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("Revorce Gaming")
        self.setFixedSize(1000, 600)
        self.setStyleSheet("background-color: #1F1F1F;")

        main_layout = QHBoxLayout()
        self.setLayout(main_layout)

        self.menu = QListWidget()
        self.menu.setFixedWidth(200)
        self.menu.setStyleSheet("""
            QListWidget {
                background-color: #2A2A2A;
                border: none;
                color: #FFFFFF;
                font-size: 16px;
            }
            QListWidget::item {
                padding: 10px;
            }
            QListWidget::item:selected {
                background-color: #00FF00;
                outline: none;
            }
            QListWidget::item:hover {
                background-color: #00CC00;
                outline: none;
            }
        """)
       
        self.translations = {
            "Türkçe": {
                "FPS Optimizer": "FPS Optimize Edici",
                "Network Optimizer": "Ağ Optimize Edici",
                "Reactivity Boost": "Tepki Süresi Arttırıcı",
                "Cleanup Tool": "Temizleme Aracı",
                "Ultra Performance": "Ultra Performans",
                "Başlat": "Başlat",
                "Ayarlar": "Ayarlar",
                "Seçilen: ": "Seçilen: ",
                "Dil Seçimi:": "Dil Seçimi:",
                "Kaydet": "Kaydet",
                "İşlem Tamamlandı!": "İşlem Tamamlandı!"
            },
            "İngilizce": {
                "FPS Optimizer": "FPS Optimizer",
                "Network Optimizer": "Network Optimizer",
                "Reactivity Boost": "Reactivity Boost",
                "Cleanup Tool": "Cleanup Tool",
                "Ultra Performance": "Ultra Performance",
                "Başlat": "Start",
                "Ayarlar": "Settings",
                "Seçilen: ": "Selected: ",
                "Dil Seçimi:": "Language Selection:",
                "Kaydet": "Save",
                "İşlem Tamamlandı!": "Operation Completed!"
            },
            "Almanca": {
                "FPS Optimizer": "FPS Optimierer",
                "Network Optimizer": "Netzwerk Optimierer",
                "Reactivity Boost": "Reaktionsfähigkeit verbessern",
                "Cleanup Tool": "Bereinigungswerkzeug",
                "Ultra Performance": "Ultra Leistung",
                "Başlat": "Start",
                "Ayarlar": "Einstellungen",
                "Seçilen: ": "Ausgewählt: ",
                "Dil Seçimi:": "Sprachauswahl:",
                "Kaydet": "Speichern",
                "İşlem Tamamlandı!": "Vorgang abgeschlossen!"
            }
        }

        self.menu = QListWidget()
        self.menu.setFixedWidth(200)
        self.menu.setStyleSheet("""
            QListWidget {
                background-color: #2A2A2A;
                border: none;
                color: #FFFFFF;
                font-size: 16px;
            }
            QListWidget::item {
                padding: 10px;
            }
            QListWidget::item:selected {
                background-color: #00FF00;
                outline: none;
            }
            QListWidget::item:hover {
                background-color: #00CC00;
                outline: none;
            }
        """)
       
        self.menu.addItems(["FPS Optimizer", "Network Optimizer", "Reactivity Boost", "Cleanup Tool", "Ultra Performance", "Ayarlar"])
        self.menu.item(4).setForeground(QColor(255, 0, 0))

        options_label = QLabel("Revorce Gaming")
        options_label.setAlignment(Qt.AlignCenter)
        options_label.setStyleSheet("color: #00FF00; font-size: 24px; margin: 10px;")

        left_layout = QVBoxLayout()
        left_layout.addWidget(options_label)
        left_layout.addWidget(self.menu)

        main_layout.addLayout(left_layout)

        self.content_area = QStackedWidget()
        main_layout.addWidget(self.content_area)

        self.selected_menu_label = QLabel("Seçilen: FPS Optimizer")
        self.selected_menu_label.setAlignment(Qt.AlignCenter)
        self.selected_menu_label.setStyleSheet("color: #FFFFFF; font-size: 18px; margin: 5px;")

        # Menüler için sayfaları oluşturma
        self.create_page("FPS Optimizer", "Yüksek FPS ile rakiplerinizi geride bırakın!")
        self.create_page("Network Optimizer", "İnternet Hızınızı zirveye taşıyın!")
        self.create_page("Reactivity Boost", "Tepki sürenizi anında azaltın, oyun dünyasında hız kazanın!")
        self.create_page("Cleanup Tool", "Sistem temizliğiyle performansınızı canlandırın ve hızı hissedin!")
        self.create_page("Ultra Performance", "Ultra Performance Teknolojisi İle Bilgisayarınızı Zirveye Taşıyın!", is_last=True)
        self.create_settings_page()  # Ayarlar sayfasını oluştur

        self.menu.currentItemChanged.connect(self.change_page)

    def create_page(self, title, description, is_last=False):
        page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel(title)
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 10px 0;")
        title_label.setFont(QFont("Lexend", 24))

        description_label = QLabel(description)
        description_label.setAlignment(Qt.AlignCenter)
        description_label.setStyleSheet("color: #FFFFFF; font-size: 22px; margin: 70px 0;")

        fps_button = QPushButton("Başlat")
        fps_button.setFixedSize(450, 60)
        fps_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 22px;
                border: none;
                border-radius: 12px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                box-shadow: 0 4px 10px rgba(0, 255, 0, 0.4);
            }
            QPushButton:hover {
                background-color: #66FF66;
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(102, 255, 102, 0.9);
                filter: brightness(1.1);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: #007700;
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(0, 255, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)

        layout.addWidget(title_label)
        layout.addWidget(description_label, alignment=Qt.AlignCenter)
        layout.addStretch()
        layout.addWidget(fps_button, alignment=Qt.AlignCenter)
        layout.addStretch()

        selected_label = QLabel(f"Seçilen: {title}")
        selected_label.setAlignment(Qt.AlignBottom | Qt.AlignCenter)
        selected_label.setStyleSheet("color: #FFFFFF; font-size: 17px; margin: 5px;")
        layout.addWidget(selected_label)

        fps_button.clicked.connect(lambda: self.start_loading(title))

        page.setLayout(layout)
        self.content_area.addWidget(page)

        if title == "Ultra Performance":
            title_label.setStyleSheet("color: #FF0000; font-size: 30px; margin: 10px 0;")
            description_label.setStyleSheet("color: #FF0000; font-size: 22px; margin: 70px 0;")
            fps_button.setStyleSheet("""
                QPushButton {
                    background-color: #FF0000;
                    color: #FFFFFF;
                    font-size: 22px;
                    border: none;
                    border-radius: 12px;
                    transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
                    box-shadow: 0 4px 10px rgba(255, 0, 0, 0.4);
                }
                QPushButton:hover {
                    background-color: #FF6666;
                    transform: scale(1.05);
                    box-shadow: 0 8px 20px rgba(255, 102, 102, 0.9);
                    filter: brightness(1.1);
                    border: 2px solid #FFFFFF;
                }
                QPushButton:pressed {
                    background-color: #770000;
                    transform: scale(0.95);
                    box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
                }
                QPushButton:focus {
                    outline: none;
                }
            """)

    def create_settings_page(self):
        """Ayarlar sayfasını oluşturur."""
        settings_page = QWidget()
        layout = QVBoxLayout()

        title_label = QLabel("Ayarlar")
        title_label.setAlignment(Qt.AlignCenter)
        title_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px 0;")
        layout.addWidget(title_label)

        # Dil seçimi
        language_layout = QHBoxLayout()
        language_label = QLabel("Dil Seçimi:")
        language_label.setStyleSheet("color: #FFFFFF; font-size: 20px;")
        # Dil seçimi etiketinin genişliğini sınırlandırmadık, böylece genişleyebilir
        # Aynı zamanda hizalamayı da düzenledik
        self.language_combo = QComboBox()  # Değişken olarak tanımlandı
        self.language_combo.addItems(["Türkçe", "İngilizce", "Almanca", "Fransızca", "İspanyolca"])
        self.language_combo.setFixedWidth(620)
        self.language_combo.setStyleSheet("""
            QComboBox {
                background-color: #2A2A2A;
                color: #ffffff;
                padding: 10px;
                border-radius: 7px;
                font-size: 18px;
            }
            QComboBox::drop-down {
                background-color: #2A2A2A;
                border: none;
            }
        """)

        # Dil seçimi etiketini ve combobox'u genişletmek için esneme ekliyoruz
        language_layout.addStretch()
        language_layout.addWidget(language_label)
        language_layout.addWidget(self.language_combo)
        language_layout.addStretch()
        layout.addLayout(language_layout)

        # Web Sitesi Butonu
        website_button = QPushButton("Yardım/Bilgi/Destek")
        website_button.setFixedSize(620, 40)  # Butonun boyutunu uzattık
        website_button.setStyleSheet("""
            QPushButton {
                background-color: transparent;
                color: #FF0000;
                font-size: 18px;
                border: 2px solid #FF0000;
                border-radius: 7px;
                transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
            }
            QPushButton:hover {
                background-color: rgba(255, 0, 0, 0.1);
                transform: scale(1.05);
                box-shadow: 0 8px 20px rgba(255, 0, 0, 0.9);
                border: 2px solid #FFFFFF;
            }
            QPushButton:pressed {
                background-color: rgba(255, 0, 0, 0.2);
                transform: scale(0.95);
                box-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
            }
            QPushButton:focus {
                outline: none;
            }
        """)
        website_button.clicked.connect(self.open_website)  # Buton tıklandığında web sitesi açılır
        layout.addWidget(website_button, alignment=Qt.AlignCenter)

        # Kaydet butonu
        save_button = QPushButton("Kaydet")
        save_button.setFixedSize(500, 50)
        save_button.setStyleSheet("""
            QPushButton {
                background-color: #00FF00;
                color: #FFFFFF;
                font-size: 18px;
                border: none;
                border-radius: 7px;
            }
            QPushButton:hover {
                background-color: #66FF66;
            }
            QPushButton:pressed {
                background-color: #007700;
            }
        """)
        save_button.clicked.connect(self.save_settings)  # Kaydet butonuna metodu bağlama
        layout.addWidget(save_button, alignment=Qt.AlignCenter)

        settings_page.setLayout(layout)
        self.content_area.addWidget(settings_page)

    def open_website(self):
        """Butona tıklandığında web sitesini açar."""
        QDesktopServices.openUrl(QUrl("http://www.clasare.com.tr"))

    def save_settings(self):
        language = self.language_combo.currentText()
        print(f"Ayarlar kaydedildi! Dil: {language}")  # Ayarları terminalde loglama

    def change_page(self):
        current_item = self.menu.currentItem()
        if current_item:
            index = self.menu.row(current_item)
            self.content_area.setCurrentIndex(index)

    def start_loading(self, title):
        loading_page = QWidget()
        loading_layout = QVBoxLayout()

        loading_label = QLabel("Lütfen Bekleyin...")
        loading_label.setAlignment(Qt.AlignCenter)
        loading_label.setStyleSheet("color: #FFFFFF; font-size: 30px; margin: 20px;")

        loading_layout.addWidget(loading_label)
        loading_page.setLayout(loading_layout)

        self.content_area.addWidget(loading_page)
        self.content_area.setCurrentWidget(loading_page)

        # 11 saniye bekledikten sonra işlemi bitir
        QTimer.singleShot(11000, lambda: self.finish_loading(title))

    def finish_loading(self, title):
        # Ultra Performance menüsü için özel mesaj
        if title == "Ultra Performance":
            ultra_page = QWidget()
            ultra_layout = QVBoxLayout()

            ultra_label = QLabel("U L T R A  P E R F O R M A N C E  O N")
            ultra_label.setAlignment(Qt.AlignCenter)
            ultra_label.setStyleSheet("color: #FF0000; font-size: 40px; margin: 20px;")

            ultra_layout.addWidget(ultra_label)
            ultra_page.setLayout(ultra_layout)

            self.content_area.addWidget(ultra_page)
            self.content_area.setCurrentWidget(ultra_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))
        else:
            # İşlem Tamamlandı mesajı gösterme
            completed_page = QWidget()
            completed_layout = QVBoxLayout()

            completed_label = QLabel("İşlem Tamamlandı!")
            completed_label.setAlignment(Qt.AlignCenter)
            completed_label.setStyleSheet("color: #00FF00; font-size: 30px; margin: 20px;")

            completed_layout.addWidget(completed_label)
            completed_page.setLayout(completed_layout)

            self.content_area.addWidget(completed_page)
            self.content_area.setCurrentWidget(completed_page)

            # 2 saniye sonra ana sayfaya geri dön
            QTimer.singleShot(2000, lambda: self.content_area.setCurrentIndex(self.menu.currentRow()))


if __name__ == "__main__":
    app = QApplication(sys.argv)
    main_window = FPSBoosterApp()
    main_window.show()
    sys.exit(app.exec_())


Peki yeni attığım kodda neden olmuyor ekledim almanca dillerinin çevirilerini falan.Kusura bakma biraz pythonda yeniyim.
 

Technopat Haberler

Geri
Yukarı