首页 > 代码库 > wxpyhon 对话框

wxpyhon 对话框

     Python内置了好多定义好了的对话框供我们使用,这里先介绍三个最常用的:

    1 Message dialog

    2 Text entry

    3 Choosing from a list

    当然python还有更多的对话框供我们选择,例如文件选择框,颜色,字体对话框等待,这里先不做介绍了。

    先看第一个wx.MessageDialog

    这是一个非常简单的提示对话框,下面看一个例子:

import wx

class App(wx.App):

    def OnInit(self):

       dlg=wx.MessageDialog(None,"Is this the coolest thing ever!",

       "MessageDialog",wx.YES_NO|wx.ICON_QUESTION)

       result=dlg.ShowModal()

       dlg.Destroy()

app=App()

app.MainLoop()   

    产生一个对话框:

技术分享

 

    关于MessageDialog的参数:wx.MessageDialog(parent,message,caption=’Message box’

                                    Style=wx.OK|wx.CANCEL,

                                    Pos=wx.DefaultPosition)

1 parent:是这个dialog的父窗口,如果没有就是None

2 message :是要在窗口中显示的信息

3 caption 是窗口的标题

4 style:窗口风格(包括图标和按钮风格),按钮可以是wx.OK wx.CANCEL或者wx.YES_NO,当然也可以包括提示图标比如:wx.ICON_ERROR,

wx.ICON_EXCLAMATION, wx.ICON_INFORMATION, and wx.ICON_QUESTION. 图标和按钮可以联合使用

5 pos 位置,一般为默认,当然也可以设置一个元组坐标位置。

 

 技术分享技术分享

    下面看看文本输入对话框,可以输入单行文本的对话框:看例子:

 

Import wx

class App(wx.App):

    def OnInit(self):

       dlg=wx.TextEntryDialog(None,"What kind of language do you like?","A Question","Python")

       if dlg.ShowModal()==wx.ID_OK:

           response=dlg.GetValue()

app=App()

app.MainLoop()

  技术分享

    下面看看TextEntryDialog的参数,第一个是所属的父窗口,第二个是要显示在对话框上的提示信息,默认的信息是”please enter text”,第三个是标题,第四是个输入框中初始显示的内容,默认是空,最后是style,包括按钮,基本和MessageDialog类似。这些按钮关联了一些消息响应,我们可以根据这个做一些事情。

    最后看第三种对话框,类似于列表选择框,但是只能选择一个选项:

Import wx

class App(wx.App):

    def OnInit(self):

       dlg=wx.SingleChoiceDialog(None,"What version of Python are you using?",

                              "Single Choice",

                              [‘1.5.2‘,‘2.0‘,‘2.1.3‘,‘2.2‘,‘2.3.1‘])

       if dlg.ShowModal()==wx.ID_OK:

           response=dlg.GetStringSelection()

app=App()

app.MainLoop()

技术分享

wxpyhon 对话框