Kodda dil seçince çalışmıyor

Hears

Decapat
Katılım
9 Haziran 2023
Mesajlar
37
Daha fazla  
Cinsiyet
Erkek
Vermiş olduğum kodda ayarlar menüsünden dil seçince çalışmıyor, yapay zeka ise saçmalıyor, kodu bozuyor yardımcı olabilir misiniz?

Kodu atamıyorum, "3 ifadeden daha fazla ekleyemezsiniz." hatasını alıyorum.
 
Son düzenleyen: Moderatör:
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_())

Kod yok yazmıştım da düzenliyorum kodu atamıyorum yazmışsın tamam.
Attım kodu.
 

Bu konuyu görüntüleyen kullanıcılar

Technopat Haberler

Yeni konular

Geri
Yukarı