python3使用tkinter实现ui界面简单实例_python

复制代码 代码如下:

import time
import tkinter as tk

class Window:
    def __init__(self, title='nms', width=300, height=120, staFunc=bool, stoFunc=bool):
        self.w = width
        self.h = height
        self.stat = True
        self.staFunc = staFunc
        self.stoFunc = stoFunc
        self.staIco = None
        self.stoIco = None

        self.root = tk.Tk(className=title)

    def center(self):
        ws = self.root.winfo_screenwidth()
        hs = self.root.winfo_screenheight()
        x = int( (ws/2) - (self.w/2) )
        y = int( (hs/2) - (self.h/2) )
        self.root.geometry('{}x{}+{}+{}'.format(self.w, self.h, x, y))

    def packBtn(self):
        self.btnSer = tk.Button(self.root, command=self.event, width=15, height=3)
        self.btnSer.pack(padx=20, side='left')
        btnQuit = tk.Button(self.root, text='关闭窗口', command=self.root.quit, width=15, height=3)
        btnQuit.pack(padx=20, side='right')

    def event(self):
        self.btnSer['state'] = 'disabled'
        if self.stat:
            if self.stoFunc():
                self.btnSer['text'] = '启动服务'
                self.stat = False
                self.root.iconbitmap(self.stoIco)
        else:
            if self.staFunc():
                self.btnSer['text'] = '停止服务'
                self.stat = True
                self.root.iconbitmap(self.staIco)
        self.btnSer['state'] = 'active'

    def loop(self):
        self.root.resizable(False, False)   #禁止修改窗口大小
        self.packBtn()
        self.center()                       #窗口居中
        self.event()
        self.root.mainloop()

########################################################################
def sta():
    print('start.')
    return True
def sto():
    print('stop.')
    return True

if __name__ == '__main__':
    import sys, os

    w = Window(staFunc=sta, stoFunc=sto)
    w.staIco = os.path.join(sys.exec_prefix, 'DLLs\pyc.ico')
    w.stoIco = os.path.join(sys.exec_prefix, 'DLLs\py.ico')
    w.loop()

时间: 2024-10-21 21:47:32

python3使用tkinter实现ui界面简单实例_python的相关文章

Python中使用Tkinter模块创建GUI程序实例_python

使用Tkinter模块来创建简单的GUI程序. Tkinter的Widgets有:Button.Canvas.Checkbutton.Entry.Frame.Label.Listbox.Menu.Menubutton.Message.Radiobutton.Scales.Scrollbar.TEXT.Toplevel等. 例: 复制代码 代码如下: # This program displays an empty window. import Tkinter def main():   main

python 循环while和for in简单实例_python

python 循环while和for in简单实例 #!/uer/bin/env python # _*_ coding: utf-8 _*_ lucknumber = 5 b = 0 while b <3: print('guss count:',b) a = int(input('you guse number')) if a > lucknumber: print ('youaerbiger') elif a == lucknumber: print ('youare righet')

Python实现冒泡,插入,选择排序简单实例_python

本文所述的Python实现冒泡,插入,选择排序简单实例比较适合Python初学者从基础开始学习数据结构和算法,示例简单易懂,具体代码如下: # -*- coding: cp936 -*- #python插入排序 def insertSort(a): for i in range(len(a)-1): #print a,i for j in range(i+1,len(a)): if a[i]>a[j]: temp = a[i] a[i] = a[j] a[j] = temp return a #

python 调用HBase的简单实例_python

新来的一个工程师不懂HBase,java不熟,python还行,我建议他那可以考虑用HBase的thrift调用,完成目前的工作. 首先,安装thrift 下载thrift,这里,我用的是thrift-0.7.0-dev.tar.gz 这个版本 tar xzf thrift-0.7.0-dev.tar.gz cd thrift-0.7.0-dev sudo ./configure --with-cpp=no --with-ruby=no sudo make sudo make install 然

python实现进程间通信简单实例_python

本文实例讲解了python实现两个程序之间通信的方法,具体方法如下: 该实例采用socket实现,与socket网络编程不一样的是socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)的第一个参数是socket.AF_UNIX 而不是 socket.AF_INET 例中两个python程序 s.py/c.py 要先运行s.py 基于fedora13/python2.6测试,成功实现! s.py代码如下: #!/usr/bin/env python im

Python Sleep休眠函数使用简单实例_python

Python 编程中使用 time 模块可以让程序休眠,具体方法是time.sleep(秒数),其中"秒数"以秒为单位,可以是小数,0.1秒则代表休眠100毫秒. 复制代码 代码如下: # 例1:循环输出休眠1秒 import time i = 1 while i <= 3: print i # 输出i i += 1 time.sleep(1) # 休眠1秒 # 例1:循环输出休眠100毫秒 import time i = 1 while i <= 3: print i #

PS制作简单的UI界面表格

PS制作简单的UI界面表格 1.首先,我们设计好Ui的背景界面 2.然后,我用矩形工具编辑表格名称背景和外框 3.然后,我们再写上所需要的字 4.然后,我们用直线工具画下线.这样就可以随时调整宽度 5.然后,同样写上列表名称 6.最后,我们用油漆桶工具填充需要显示的表格状态 分类: PS入门教程

优化UI界面会惹怒用户?你应该这么做

有时候在优化UI界面时,会惹怒用户.那么,如何有效的去避免呢,我们来一起看看有哪些优化UI界面的方法. 以下内容由 Mockplus 团队翻译整理,仅供学习交流. 有时,优化网站或移动应用的界面会让用户感到崩溃.人们可能会对新的配色方案.元素的定位或其他类似的东西感到失望.显然,用户这样的反应并不是你所期望的界面优化. 即使是像Facebook.Instagram和Spotify这样的大型成功公司,也经常受到负面的反馈.例如,在2017年2月,Spotify更新了它的网页播放器,引入了新的布局.

设计理论:分类信息网站UI界面设计

对于分类信息网站,目前已经有很程序的UI界面结果,不过对于一个新网站来说,照搬成熟的网站结构不一定是件好事,因为你的网站的内容与用户是不确定的,所以对于初期的分类信息网站来说界面做的越简单层次越少可能效果更好. 前几天有个朋友做了一个类似赶集网那样的分类信息网站,觉得链接太多视觉太乱,让我帮忙看看UI(避免广告嫌疑就不给网站地址了),基本上是赶集的小翻版.在信息分类上,是这么做的:大类分房产.招聘.车辆买卖.交友等等这样的大类,每个大类下面再细分需求,比如房屋求租.合租.二手房.日租房.商铺-一