❶ 用的pyqt5,想实现点按钮打开新窗口 【总是报错,实在不知道这个BUG怎么调了,求大佬帮助】
qt 点击按钮调用另一个窗口后,新窗口按钮自定义槽函数不执行,...
主窗口按钮的槽函数,点击调用
void Ui_initface::set_clicked()
{
Ui_Dialog udialog;
udialog.setupUi(dialog);
dialog->show();
}
新窗口的槽函数
void Ui_Dialog::save_conf()
{
char s_c[11];
int s_i[8];
memset(s_i,0,8);
QString pstr;
s_i[0]=spinBox0->value();
printf("%d\n",s_i[0]);
s_i[1]=spinBox0_2->value();
pstr=lineEdit_ag->text();
const char *c_pstr = pstr.toLatin1().data();
//printf("%s\n",c_pstr);
strcpy(s_c,c_pstr);
s_i[4]=radioButton_ag1->isChecked();
s_i[5]=radioButton_ag01->isChecked();
s_i[2]=radioButton_a1->isChecked ();
s_i[3]=radioButton_01->isChecked ();
s_i[6]=radioButton_ab1->isChecked ();
s_i[7]=radioButton_ab01->isChecked ();
printf("%d\n",s_i[1]);
printf("%d\n",s_i[2]);
printf("%d\n",s_i[3]);
printf("%d\n",s_i[4]);
printf("%d\n",s_i[5]);
printf("%d\n",s_i[6]);
printf("%d\n",s_i[7]);
Write_Config(s_i,s_c);
emit CloseDialog();
}
❷ PYQT5中如何将按钮点击连接的结果输出到界面上
笔记本键盘出现了按键失灵情况,这种情况多是由于软件原因或键盘串键、短路或其他硬件故障等原因造成的,导致其他按键失灵,建议您可以做如下检查确认故障进行尝试:
1.开机出现SAMSUNG 图标时按F2键进入BIOS设置,按F9键将BIOS恢复为出厂模式,按F10保存并重启。
2.用U盘或光盘启动进入PE或Dos模式中确认是否可用。
3.开机出现系统图标前快速按F8键进入安全模式后进行尝试,确认是否为系统或软件故障引起。
4.查看按键下是否有异物,如有异物建议您将机器倒置或摇晃,也可请使用毛刷,、镊子、气吹等工具进行简单的清除(注意不要损坏按键下支架,不建议非专业人员尝试,以避免更严重的损坏)。若情况严重建议您送至售后服务中心由专业工程师进行清洁维修。
5.确认键盘是否曾有浸液史、确认失灵按键按下后是否可正常弹起,若发生过浸液或不能正常弹起则需要到售后服务中心,由工程师帮助您进一步检查与维修。
6.重新安装操作系统尝试(提示您先备份重要数据与资料)。
7.若您需临时使用,也可连接USB键盘使用。
❸ pyqt5按钮打开文件
[python]view plain
importsys
importos
fromPyQt5.QtCoreimport*
fromPyQt5.QtWidgetsimport*
classNotepad(QMainWindow):
def__init__(self):
super().__init__()
self.initUI()
definitUI(self):
openAction=QAction('Open',self)
openAction.setShortcut('Ctrl+O')
openAction.setStatusTip('Openafile')
openAction.triggered.connect(self.openFile)
closeAction=QAction('Close',self)
closeAction.setShortcut('Ctrl+Q')
closeAction.setStatusTip('CloseNotepad')
closeAction.triggered.connect(self.close)
menubar=self.menuBar()
fileMenu=menubar.addMenu('&File')
fileMenu.addAction(openAction)
fileMenu.addAction(closeAction)
self.textEdit=QTextEdit(self)
self.textEdit.setFocus()
self.textEdit.setReadOnly(True)
self.resize(700,800)
self.setWindowTitle('Notepad')
self.setCentralWidget(self.textEdit)
self.show()
defopenFile(self):
filename,_=QFileDialog.getOpenFileName(self,'OpenFile',os.getenv('HOME'))
fh=''
ifQFile.exists(filename):
fh=QFile(filename)
ifnotfh.open(QFile.ReadOnly):
QtGui.qApp.quit()
data=fh.readAll()
codec=QTextCodec.codecForUtfText(data)
unistr=codec.toUnicode(data)
tmp=('Notepad:%s'%filename)
self.setWindowTitle(tmp)
self.textEdit.setText(unistr)
defmain():
app=QApplication(sys.argv)
notepad=Notepad()
sys.exit(app.exec_())
if__name__=='__main__':
main()
❹ pyqt5如何把Python代码放在软件里运行
在python中可以用
import os
os.system("python file")
这样的方式实现运行另一个python文件的目的。
❺ pyqt5通过键盘多项同时选择
ctrl不放用鼠标点要选取的目标。
利用快捷键可以代替鼠标做一些工作,可以利用键盘快捷键打开、关闭和导航“开始”菜单、桌面、菜单、对话框以及网页,Word里面也可以用到快捷键。
系统级快捷键可以全局响应,不论当前焦点在哪里、运行什么程序,按下时都能起作用。
一般系统和应用程序的快捷键可以按自己的操作习惯进行自定义。
❻ Python,pyqt5
pyqt5&pythonGui入门教程(1)第一个窗口(1) 第一个窗口和代码详细注释: fromPyQt5importQtWidgets#从PyQt库导入QtWidget通用窗口类classmywindow(QtWidgets.QWidget):#自己建一个mywindows类,以class开头,mywindows是自己的类名,
❼ pyqt5输入数学公式
输入做加法
今天我们做一个简单的输入做加法的一个界面,涉及内容:
1、输入框
2、按钮事件
3、框内容获取和修改
UI布局
首先按照第二讲的说法,拖出一个和我一样的界面,功能实现就是A+B=C,左边两个输入框和输出框是Line Edit控件,然后最右边是一个按键Push Button按钮。
在属性界面找到三个框和按钮的objectName,分别命名A\B\C和Calculate
首先布局界面,然后按照上一讲的方法,进行显示,但是你发现你按计算按钮没有任何反应,这就要讲到下一个知识点,按钮点击事件。
按钮事件
实现A+B之前,我们先熟悉按钮点击事件,我们先再拖两个按钮,命名可以不管,显示文字改为显示和隐藏。如下图
然后找到菜单栏,找到添加槽和信号按钮。
然后鼠标点显示不要放,鼠标移动到B输入框会出现以下界面,简单理解就是显示按钮的什么信号会触发B输入框的什么动作。
这边左下角的勾打上,然后左边表示按钮显示出发了什么信号,我们选择点击信号,右边表示需要连接到什么动作,我们选择B框的show(),表示B框的显示。隐藏按钮同理,左边选择点击信号,右边选择hide(),表示隐藏。
然后保存,转码后,运行main.py,显示状态如下,效果是不是很明显。
那么我们现在回到刚刚的加法,计算按钮上,由于我们使用的是A+B算法,所以我们这个触发的动作需要自己写,因此在连接信号和槽框中,信号直接拉出来放在空白处,然后出来的槽动作那边点编辑
在出来的弹窗中点击+,添加槽函数,输入CalculateClick()。相当于一旦我点击计算按钮,我就会调用这个函数的意思。
然后对应的选择好之后,点击OK,保存UI,并用PyUIC进行转码
然后我们打开UI.py,我们会发现这个函数,意思就是我们按钮的点击链接到了Calculate函数。然后我们需要在主函数中重写这个函数。因为我们本身UI不带这个函数
这边我们需要对UI界面类进行重写,在主函数中添加以下代码:
class Mywindow(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self):
super(Mywindow, self).__init__()
self.setupUi(self)
def CalculateClcik(self):
print("触发按钮。")
❽ python pyqt5 如何把ssh远程执行的linux命令结果输出到控件上(如textEdit)
textEdit控件应该有个setText函数,可以使用它来显示想要显示的文本。
❾ pyqt5实现按键后切换显示图片,我会显示单张图像但不知道,多张图像怎么搞
pyqt5实现按键后切换显示图片我会显示单张图像但不知道多张图像搞
用 js (quot; button & quot;)写 $。点击(function (){ $(& amp; img & quot;) show () ; })
❿ python pyqt5 qthread有哪些方法
用例子说明吧,常用的不多
PyQt中的线程类 QtCore.QThread ,使用时继承QThread类
启动界面的线程暂称为UI线程。界面执行命令时都在自己的UI线程中。
如果在UI线程中执行网络连接和数据库操作等耗时的操作,界面会被卡住,Windows下有可能会出现“无响应”的警告。
阻塞UI线程会降低用户体验和应用稳定性。因此我们可以把耗时操作放在线程中去执行。
QThread代表一个线程,我们可以复写run函数来执行我们要的操作。
QThread可以使用 QtCore.pyqtSignal 来与界面交互和传输数据。
PyQt4 QThread 代码示例
•Python2.7
# -*- coding: utf-8 -*-
import sys
from PyQt4 import QtCore
from PyQt4.QtCore import QCoreApplication
from PyQt4.QtGui import QWidget, QPushButton, QApplication, QTextBrowser
class TimeThread(QtCore.QThread):
signal_time = QtCore.pyqtSignal(str, int) # 信号
def __init__(self, parent=None):
super(TimeThread, self).__init__(parent)
self.working = True
self.num = 0
def start_timer(self):
self.num = 0
self.start()
def run(self):
while self.working:
print "Working", self.thread()
self.signal_time.emit("Running time:", self.num) # 发送信号
self.num += 1
self.sleep(1)
class TimeDialog(QWidget):
def __init__(self):
super(TimeDialog, self).__init__()
self.timer_tv = QTextBrowser(self)
self.init_ui()
self.timer_t = TimeThread()
self.timer_t.signal_time.connect(self.update_timer_tv)
def init_ui(self):
self.resize(300, 200)
self.setWindowTitle('TimeDialog')
self.timer_tv.setText("Wait")
self.timer_tv.setGeometry(QtCore.QRect(10, 145, 198, 26))
self.timer_tv.move(0, 15)
btn1 = QPushButton('Quit', self)
btn1.setToolTip('Click to quit')
btn1.resize(btn1.sizeHint())
btn1.move(200, 150)
btn1.clicked.connect(QCoreApplication.instance().quit)
start_btn = QPushButton('Start', self)
start_btn.setToolTip("Click to start")
start_btn.move(50, 150)
self.connect(start_btn, QtCore.SIGNAL("clicked()"), self.click_start_btn)
def click_start_btn(self):
self.timer_t.start_timer()
def update_timer_tv(self, text, number):
self.timer_tv.setText(self.tr(text + " " + str(number)))
if __name__ == '__main__':
app = QApplication(sys.argv)
time_dialog = TimeDialog()
time_dialog.show()
sys.exit(app.exec_())
QThread中使用的信号 signal_time = QtCore.pyqtSignal(str, int) 指定了参数str和int
发送信号 self.signal_time.emit("Running time:", self.num)
外部接收信号 self.timer_t.signal_time.connect(self.update_timer_tv)
信号连接到方法 update_timer_tv(self, text, number) ,注意信号与方法的参数要一一对应
使用中我们可以定义多种不同的信号 QtCore.pyqtSignal
启动线程,调用 start()