关于python 命令控制程序启动与结束

关于python 命令控制程序启动与结束,第1张

可以使用一个标志变量来控制程序的启动和结束。

首先,在主程序中设置一个标志变量,例如 running,用于指示程序是否处于运行状态。在程序开始时,running 应设置为 False。

然后,在每次循环中检查 running 的值。如果 running 为 True,则执行 auto() 函数;如果 running 为 False,则等待用户输入命令

当用户输入 qd 命令时,将 running 设置为 True,并执行 auto() 函数。当用户输入 tz 命令时,将 running 设置为 False,并执行 reset() 函数。

示例代码如下:

running

running = False

while True:

cmd = input("请输入命令:")

if cmd == 'qd':

running = True

elif cmd == 'tz':

running = False

if running:

auto()

else:

reset()

在这段代码中,我们使用了一个 while 循环来不断接收用户的命令。在每次循环中,我们会读入用户的命令,并根据命令的不同设置 running 的值。如果 running 为 True,则执行 auto() 函数;如果 running 为 False,则执行 reset() 函数。

这样,用户就可以随时输入 tz 命令来停止程序,也可以输入 qd 命令来重新启动程序。

希望这些信息能够帮助您。

有很多种方法,但是很多方法要么这个有问题,要么那个有问题,最后终于找到一种没问题的方法。记录一下:

Loginpy(登录窗口)文件

import sys

from PyQt5 import QtCore, QtGui, QtWidgets

from PyQt5QtCore import

from PyQt5QtWidgets import QFileDialog, QMessageBox, QDockWidget, QListWidget

from PyQt5QtGui import

from Ui_Login import Ui_Login_Window #由UI文件生成py文件后,导入创建的GUI类

from Main import # Mainpy为 主窗口代码文件

from class_MSSQL import MSSQL

#QtWidgetsQMainWindow:继承该类方法

class Login_window(QtWidgetsQMainWindow,Ui_Login_Window):

#__init__: 析构函数,也就是类被创建后就会预先加载的项目。

# 马上运行,这个方法可以用来对你的对象做一些你希望的初始化。

def __init__(self):

#这里需要重载一下Login_window,同时也包含了QtWidgetsQMainWindow的预加载项。

super(Login_window, self)__init__()

selfsetupUi(self)

# 将点击事件与槽函数进行连接

selfbtn_loginclickedconnect(selfbtn_login_fuc)

#登录按钮 函数

def btn_login_fuc(self):

#1 获取输入的账户和密码

account = selftxt_1text() # 记得text要打括号()!

password = selftxt_2text()

if account == "" or password == "":

reply = QMessageBoxwarning(self,"警告","账号密码不能为空,请输入!")

return

#2 查询数据库,判定是否有匹配

ms = MSSQL()

result = msLogin_result(account, password)

if(len(result) > 0):

#1打开新窗口

Ui_Mainshow()#2关闭本窗口

selfclose()

else:

reply = QMessageBoxwarning(self,"警告","账户或密码错误,请重新输入!")

if __name__ == '__main__': #如果这个文件是主程序。

app = QtWidgetsQApplication(sysargv) #QApplication相当于main函数,也就是整个程序(很多文件)的主入口函数。对于GUI程序必须至少有一个这样的实例来让程序运行。

window = Login_window() #生成一个实例(对象)

Ui_Main = Ui_Main() #生成主窗口的实例

windowshow() #有了实例,就得让它显示。这里的show()是QWidget的方法,用来显示窗口。

sysexit(appexec_()) # 调用sys库的exit退出方法,条件是appexec_()也就是整个窗口关闭。

Mainpy(主窗口)文件

import sys

from PyQt5 import QtCore, QtGui, QtWidgets

from PyQt5QtCore import

from PyQt5QtWidgets import

from PyQt5QtGui import

from Ui_Main import Ui_MainWindow #由UI文件生成py文件后,导入创建的GUI类

import math

from PIL import Image, ImageDraw, ImageFont

import numpy as np

import os

import cv2 as cvcv

from class_Detection import Detection

class Ui_Main(QtWidgetsQMainWindow,Ui_MainWindow):

def __init__(self):

super(Ui_Main, self)__init__()

selfsetupUi(self)

# 将点击事件与槽函数进行连接

selfbtn_videoclickedconnect(selfbtn_video_fuc)

def btn_video_fuc(self):

filename = QFileDialoggetOpenFileName(self,'open file','/')

selftimer_camera = QTimer(self)

selfcap = cvcvcv2VideoCapture(filename[0])

selftimer_cameratimeoutconnect(selfshow_pic)

selftimer_camerastart(10) #1毫秒

def show_pic(self):

dc = Detection()

success,frame = selfcapread()

if success:

show = dcprocess_image(frame)

showImage = QImage(showdata, showshape[1], showshape[0],QImageFormat_RGB888)

selflabelsetPixmap(QPixmapfromImage(showImage))

selflabelsetScaledContents(True) #自适应

selftimer_camerastart(10)

if __name__ == '__main__':

app = QtWidgetsQApplication(sysargv)

window = Ui_Main()

windowshow()

sysexit(appexec_())

你好,

1、读取windows窗口,应该要用系统编程的知识实现接口,然后python调用

python 没有直接能实现该功能的模块

2、或者,你需要调用win32 api了已经不是python的标准范围

你可以看看 Pywin32 这个扩展库

可以在python中读取文本框中的内容,作为参数传给c++程序,返回值可以直接通过调用exe的函数读取,或者通过c++将结果输出到文本文件中,然后python后台读取文本文件中的值,显示到结果文本框中。

跳转实现思路

主程序相当于桌子:

import tkinter as tk

root = tkTk()

而不同的Frame相当于不同的桌布:

face1 = tkFrame(root)

face2 = tkFrame(root)

每个界面采用类的方式定义各自的控件和函数,每个界面都建立在一个各自定义的Frame上,那么在实现跳转界面的效果时,

只需要调用tkinterdestroy()方法销毁旧界面,同时生成新界面的对象,即可实现切换。

而对于切换的过程中改变背景颜色和大小,可以通过修改frame控件的属性,或者修改root的属性(桌子的属性)来实现。

以上就是关于关于python 命令控制程序启动与结束全部的内容,包括:关于python 命令控制程序启动与结束、python关闭主页面返回登录界面、Python 如何获得一个Windows程序窗口,并在窗口里的当前等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9835483.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存