简单计算机的python编程源代码_Windows下用python编写简单GUI程序的方法

Python实现GUI简单的来说可以调用Tkinter库,这样一般的需求都可以实现,显示简单的windows窗口代码如下:

python_gui.py

1 #!C:\Python27\python.exe

2 #-*- coding:UTF-8 -*-

3

4 importTkinter5

6 def center_window(w = 300, h = 200):7 ws =root.winfo_screenwidth()8 hs =root.winfo_screenheight()9 x = (ws/2) - (w/2)10 y = (hs/2) - (h/2)11 root.geometry("%dx%d+%d+%d" %(w, h, x, y))12

13 root = Tkinter.Tk(className='python gui')14 center_window(500, 300)15 root.mainloop()

第一行实现了,直接输入文件名即可执行,不用手动指定python.exe的位置也可以,现在可以运行cmd来执行一下

734555-20160221155825108-1954662551.png

可以看到,用cmd可以正常启动该python GUI程序,关掉gui界面或者关掉命令行窗口后,程序都会自动结束,如果我们编写了给普通用户使用的程序该怎么做,一方面,我们应该拷贝python的安装目录过去,因为一般用户计算机上没有python环境,我们直接拷贝安装目录就可以,不用注册表支持;另一方面,python GUI程序在运行时后面会伴随着一个黑色的命令行窗口,这个总是不太好看,我们可以考虑隐藏,隐藏的方法如下:

首先编写bat脚本启动python源程序,脚本名称:start.bat

1 @echo off2 start /b C:\Python27\python.exe python_gui.py3 exit

当然第二行启动位置我们可以根据实际情况编写,这样直接运行start.bat就会启动python程序但是会伴随命令行窗口,所以不得不用一个比较low的方法,就是用vbs脚本把程序放到后台执行,编写脚本start.vbs

Set ws = CreateObject("Wscript.Shell")

ws.run"cmd /c start.bat",vbhide

通过运行这个vbs脚本就可以只看到gui窗口,并且把cmd窗口隐藏掉了,到这里,我们想要的功能就实现了,最后可以用c语言编译封装成一个exe的可执行文件执行上述代码即可实现调用,还可以编写一个最终的启动脚本来启动vbs即可,比如run.bat

@echo off

start start.vbs

虽然过程调用了好几次,但是速度几乎不受影响,并且又是客户端使用,因此没什么问题,这就是简单的python GUI程序的调用方式,并且调用时会让伴随的命令行放到后台去执行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'aaa.ui' # # Created by: PyQt5 UI code generator 5.11.3 # # WARNING! All changes made in this file will be lost! import sys, os from PyQt5 import QtCore, QtWidgets, QtGui from PyQt5.QtCore import * from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5 import QtCore, QtGui, QtWidgets class U_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(1204, 836) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth()) MainWindow.setSizePolicy(sizePolicy) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.tableWidget = QtWidgets.QTableWidget(self.centralwidget) self.tableWidget.setGeometry(QtCore.QRect(80, 240, 1041, 371)) self.tableWidget.setAutoScrollMargin(9) self.tableWidget.setRowCount(9) self.tableWidget.setColumnCount(8) self.tableWidget.setObjectName("tableWidget") item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(0, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(1, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(2, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(3, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(4, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(5, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(6, item) item = Q

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值