我想要做的是Countrypage通过单击本身的“新建”按钮来打开一个新的子窗口Countrypage。
例如,如果我在一个CountryPage窗口(窗口标题:“国家/地区页面”)中单击“新建”按钮,Countrypage则会在MDI区域中再打开一个新窗口(窗口标题:“国家/地区页面1”)。现在,如果我们单击“国家/地区页面 1”中的“新建”按钮,MDI 区域中将再打开一个新窗口(窗口标题:“国家/地区页面 2”),依此类推 - 我想一一关闭窗口通过按 中相应的“关闭”按钮Countrypage。仅通过按“新建”按钮才能打开新窗口。
如果我们通过按“关闭”按钮关闭最后打开的窗口,“国家”文本框中的文本项将自动更新到前一个窗口的“国家”文本框中,依此类推。
主要脚本:
import sys,os
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from sample_countrypage import Countrypage
class MainPage(QMainWindow):
count = 0
def __init__(self):
super().__init__()
self.mdi = QMdiArea()
self.mdi.setFixedSize(1000,400)
self.mdi.setHorizontalScrollBarPolicy(Qt.ScrollBarAsNeeded)
self.mdi.setVerticalScrollBarPolicy(Qt.ScrollBarAsNeeded)
self.setWindowTitle(" Sample Programme")
self.setGeometry(100,100,1600,600)
self.Ui()
self.show()
def Ui(self):
self.btn1=QPushButton("Country")
self.btn1.setFixedSize(100, 30)
self.btn1.clicked.connect(self.countrypage)
self.left_layout = QVBoxLayout()
self.right_layout = QHBoxLayout()
self.main_layout = QHBoxLayout()
self.left_layout.setContentsMargins(3,5,5,3)
self.left_layout.addWidget(self.btn1)
self.left_layout.addStretch()
self.right_layout.addWidget(self.mdi)
self.main_layout.setSpacing(5)
self.main_layout.setContentsMargins(0,0,0,0)
self.main_layout.addLayout(self.left_layout)
self.main_layout.addLayout(self.right_layout)
self.main_layout.addStretch()
widget = …Run Code Online (Sandbox Code Playgroud) 是否可以在 Pyqt5 中以编程方式更改输入键盘布局?
我的第一个和第二个文本框接受泰米尔字母。泰米尔语 有很多可用的键盘布局。默认情况下,在 Windows 10 中,泰米尔语注音、泰米尔语 99 和泰米尔语传统键盘可用。现在我想以编程方式选择键盘布局...
例如。在我的第一个文本框中,我需要分配“Tamil99”键盘布局,在第二个文本框中,我需要分配“Tamil Phonetic”键盘布局。如何以编程方式分配它?
import sys
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
class Diff_Language(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("InPut Different languges in Different Textbox")
self.lbl1 = QLabel("Input Language - Tamil99 Keyboard")
self.lbl2 = QLabel("Input Language - Tamil phonetic keyboard")
self.tbox1 = QLineEdit()
self.tbox1.setFont(QFont('senthamil', 10, QFont.Bold))
self.tbox2 = QLineEdit()
self.tbox2.setFont(QFont('senthamil', 30, QFont.Bold))
self.vbox = QVBoxLayout()
self.vbox.addWidget(self.lbl1)
self.vbox.addWidget(self.tbox1)
self.vbox.addWidget(self.lbl2)
self.vbox.addWidget(self.tbox2)
self.setLayout(self.vbox)
def main():
app = QApplication(sys.argv)
mainscreen = Diff_Language() …Run Code Online (Sandbox Code Playgroud)