python界面设计------wx

python的界面设计的库有很多今天用wx写一个简单的小程序

界面大致如下图所示

#图像用户界面
import wx
app = wx.App()
win = wx.Frame(None,title="byc",size=(800,800))#在不考虑父类部件的请况下用值None
#现在在图像框中添加代码
#btn=wx.Button(win)  #在框架上添加按钮也很简单只要使用win作为父类参数实例化wx.Button()就可以了
'''
    这时候的按钮是占据整个界面的而且,界面也没有标题
    下面我们需要进行美化

LoadButton = wx.Button(win,label='Open')
SaveButton = wx.Button(win,label='Save')
这样写可以吗当然不行,我们还需要确定按钮的位置呢

'''

LoadButton = wx.Button(win,label='Open',
                                pos=(450,10),size=(90,25))
SaveButton = wx.Button(win,label='Save',
                            pos=(550,10),size=(90,25))#设置按钮的标签,位置,大小

filename = wx.TextCtrl(win,pos=(10,10),size=(410,25))#加入一个文件搜索框
contents = wx.TextCtrl(win,pos=(10,40),size=(770,700),style=wx.TE_MULTILINE|wx.HSCROLL)#加入一个文件书写框
#TextCtrl()文本控件
#style表示界面的风格,这个我也不知道,百度一下吧

win.Show()
app.MainLoop()
#到这步为止构建了一个图形框架

 这种写法是绝对定位的写法,下面我们写一个相对定位的写法

关于wx的几种提示框的问题:

http://blog.sina.com.cn/s/blog_4b5039210100ezgz.html

借鉴下其他博友

import wx

def OnInit(self):#wx弹出提示框 Y-N型
       dlg=wx.MessageDialog(None,"确认保存?",
       "MessageDialog",wx.YES_NO|wx.ICON_QUESTION)
       result=dlg.ShowModal()
       dlg.Destroy()

def load(event):
    file = open(filename.GetValue())
    contents.SetValue(file.read())
    file.close()

def save(event):
    file = open(filename.GetValue(),'w')
    file.write(contents.GetValue())
    OnInit(event)
    file.close()
    contents.Clear()


app = wx.App()
win = wx.Frame(None,title="byc",size=(800,800))#在不考虑父类部件的请况下用值None
bkg = wx.Panel(win)#在框架中加入一个面板

LoadButton = wx.Button(bkg,label='Open')
LoadButton.Bind(wx.EVT_BUTTON,load)

SaveButton = wx.Button(bkg,label="Save")
SaveButton.Bind(wx.EVT_BUTTON,save)

filename = wx.TextCtrl(bkg)
contents = wx.TextCtrl(bkg,style=wx.TE_MULTILINE|wx.HSCROLL)


hbox = wx.BoxSizer()#一个容器默认是水平的
hbox.Add(filename,proportion=1,flag=wx.EXPAND)
hbox.Add(LoadButton,proportion=0,flag=wx.LEFT,border=5)
hbox.Add(SaveButton,proportion=0,flag=wx.LEFT,border=5)

vbox = wx.BoxSizer(wx.VERTICAL)
vbox.Add(hbox,proportion=0,flag=wx.EXPAND|wx.ALL,border=5)
vbox.Add(contents,proportion=1,flag=wx.EXPAND|wx.LEFT|wx.BOTTOM|wx.RIGHT,border=5)

bkg.SetSizer(vbox)
win.Show()

app.MainLoop()

至此一个简单的python程序就完成了,但是还是感觉显的过于简单了,下面开始拓张一下。虽然做不到高级但是作为一个简单的

PC版软件应该是可以的

这里引进以为网友的作品

https://www.cnblogs.com/Twobox/p/7397665.html

 

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python界面源码是指使用Python编程语言编写的用于创建图形用户界面(GUI)的程序源代码。Python提供了多种库和框架来创建GUI,其中最常用的是Tkinter、PyQt和wxPython。 Tkinter是Python的内置库,可以轻松创建简单的GUI应用程序。下面是一个使用Tkinter创建一个简单窗口的示例代码: ``` import tkinter as tk root = tk.Tk() # 创建窗口对象 label = tk.Label(root, text="Hello World!") # 创建标签对象 label.pack() # 将标签放置到窗口中 root.mainloop() # 进入窗口主循环 ``` PyQt是一个功能强大且灵活的GUI框架,它提供了丰富的组件和功能。以下是一个使用PyQt创建一个简单窗口的示例代码: ``` from PyQt5 import QtWidgets app = QtWidgets.QApplication([]) # 创建应用对象 window = QtWidgets.QWidget() # 创建窗口对象 window.setWindowTitle("Hello World!") # 设置窗口标题 label = QtWidgets.QLabel(window) # 创建标签对象 label.setText("Hello World!") label.setAlignment(QtCore.Qt.AlignCenter) # 设置标签居中 layout = QtWidgets.QVBoxLayout() # 创建布局对象 layout.addWidget(label) # 将标签添加到布局中 window.setLayout(layout) # 将布局设置到窗口中 window.show() # 显示窗口 app.exec_() # 运行应用主循环 ``` wxPython是一个基于wxWidgets库的Python封装,它提供了跨平台的GUI开发工具。以下是一个使用wxPython创建一个简单窗口的示例代码: ``` import wx app = wx.App() # 创建应用对象 frame = wx.Frame(None, title="Hello World!") # 创建窗口对象 panel = wx.Panel(frame) # 创建面板对象 label = wx.StaticText(panel, label="Hello World!") # 创建静态文本对象 sizer = wx.BoxSizer(wx.VERTICAL) # 创建布局管理器 sizer.Add(label, 0, wx.ALIGN_CENTER) # 将文本添加到布局中 panel.SetSizer(sizer) # 将布局设置到面板中 frame.Show() # 显示窗口 app.MainLoop() # 运行应用主循环 ``` 这些示例代码演示了如何使用常用的Python GUI库来创建一个简单的窗口,并在窗口中显示"Hello World!"。 这只是GUI编程的入门示例,实际应用中可以根据需求添加更多的组件和功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值