标签: wxpython

修改wxPython上的StaticBoxSizer标签

有没有办法在初始化后修改wxPython上的StaticBoxSizer的标签?

我在wxPython的文档中找不到任何内容.

谢谢

wxpython

0
推荐指数
1
解决办法
1248
查看次数

使用wxpython绘制一个圆圈

嗨,我正在使用wxpython绘制一个项目圈.请仔细查看代码并告诉我我做错了什么,它甚至没有显示任何错误,但也没有绘制圆圈.我只是得到一个空白的窗口.

import wx

class SketchFrame(wx.Frame):
    def __init__(self, parent):

        wx.Frame.__init__(self, parent, -1, "Sketch Frame",size=(350,350))
        self.sketch = SketchWindow(self, -1)


class SketchWindow(wx.Window):

    def __init__ (self, parent,ID):

        wx.Window.__init__(self, parent, ID)

        self.panel =wx.Panel(self, size= (350,350))

        self.InitBuffer()


    def InitBuffer(self):

        size=self.GetClientSize()
        self.Buffer=wx.EmptyBitmap(size.width,size.height)
        dc=wx.BufferedDC(None,self.Buffer)
        dc.SetBackground(wx.Brush(self.GetBackgroundColour()))
        dc.Clear()
        self.Drawcircle(dc)
        self.reInitBuffer=False


    def Drawcircle(self,dc):
        pen=wx.Pen('blue',4)
        dc.SetPen(pen)
        dc.DrawCircle(100,100,50)

    def OnPaint(self, event):
        dc = wx.BufferedPaintDC(self, self.buffer)



if __name__=='__main__':
    app=wx.PySimpleApp()
    frame=SketchFrame(None)
    frame.Show(True)
    app.MainLoop()
Run Code Online (Sandbox Code Playgroud)

谢谢

wxpython

0
推荐指数
1
解决办法
5586
查看次数

wxPython窗口不会关闭

当您单击取消时,它取消...当您单击确定时,它会重新弹出对话框.我怎样才能解决这个问题?

def quitApp(self, event):
    dial = wx.MessageDialog(None, 'Are you sure you want to quit?','Quit',  wxYES | wxNO)
    if dial.ShowModal() == wxID_YES:
        self.Close(true)
Run Code Online (Sandbox Code Playgroud)

python wxpython

0
推荐指数
1
解决办法
2558
查看次数

PlotCanvas在wx.Panel上?

我对wx.lib.plot.PlotCanvas模块有困难,让它在面板中显示.有人可以帮我理解我做错了什么吗?

#!/usr/bin/python

import wx
import logging
import wx.lib.plot as plot

class PlotCanvasExample(wx.Panel):

    def __init__(self, parent, id, size):
        ''' Initialization routine for the this panel.'''
        wx.Panel.__init__(self, parent, id, style=wx.BORDER_NONE, size=desiredSize)

        self.data = [(1,2), (2,3), (3,5), (4,6), (5,8), (6,8), (10,10)]
        canvas = plot.PlotCanvas(self, size=desiredSize)
        line = plot.PolyLine(self.data, legend='', colour='pink', width=2)
        gc = plot.PlotGraphics([line], 'Line Graph', 'X Axis', 'Y Axis')
        canvas.Draw(gc, xAxis=(0,15), yAxis=(0,15))

if __name__ == '__main__':
    ''' Simple main program to display this panel. '''
    # Create a simple wxFrame …
Run Code Online (Sandbox Code Playgroud)

python wxpython

0
推荐指数
1
解决办法
3073
查看次数

在 wxpython 中更新列表框?

我在更新列表框时遇到了一些麻烦,我尝试过刷新和更新,但那些返回的错误。

列表框使用列表来获取其信息。它将显示列表中的初始项目。

但是,当我更新列表时(在程序运行时),它不会实时显示更改。

如果您难以理解我的意思,请发表评论。

python wxpython

0
推荐指数
1
解决办法
2630
查看次数

如何在Python中创建报表设计器

我如何在Python中创建报表设计器...

  1. 独立桌面应用程序.
  2. 集成在自定义桌面应用程序中.

python wxpython desktop-application report

0
推荐指数
1
解决办法
2903
查看次数

Python的字符串问题

我是一个Python菜鸟,所以我可能会在这里遗漏一些东西,但我在程序中如何处理字符串时遇到问题.当我显示它时,只显示第一个字符.

# some code
MessageBox = ctypes.windll.user32.MessageBoxA
# some other code
testString = self.statusBar1.GetStatusText(0)
# displays "azertyu"
MessageBox(None, "azertyu", 'COUCOU', 0)
# displays 'M'
MessageBox(None, testString, 'COUCOU3', 0)
# displays 'a'
MessageBox(None, testString[1:], 'COUCOU3', 0) #
#displays 'c'
MessageBox(None, testString[2:], 'COUCOU3', 0)
Run Code Online (Sandbox Code Playgroud)

完整的字符串是'Machine'(实际上比它长).Python如何认为任何字符都是结尾字符并且一次只显示一个字符?我在这里错过了一些Python基础知识吗?

PS.GetStatusText参考可在http://www.wxpython.org/docs/api/wx.StatusBar-class.html#GetStatusText获得.我用一个很长的字符串测试了GetStatusText,它似乎没有剪切文本.

python string wxpython

0
推荐指数
1
解决办法
2097
查看次数

在嵌套sizer中找到"父"sizer的最佳方法是什么?

在wxPython中我有GridBagSizer,GS,与一些嵌套大小测定器s1s2和一个按钮b,在单个小区中.

在一个EVT_BUTTON事件上,我得到了按钮对象.要将网格中的按钮对象移动到不同的网格单元格,我需要移动顶级sizer,s1,这是GridBagSizer的直接"子"(如果这是正确的术语),gs.找到顶级sizer的最佳方法是什么?

object.GetContainingSizer()返回按钮对象的sizer,s2,但我看不到如何到达s1.我是否需要在s2(或b)对象中存储对s1的引用?这看起来相当不优雅?

# pseudocode
panel=wx.Panel( None )
gs= wx.GridBagSizer()
s1= wx.BoxSizer()
s2= wx.BoxSizer()
b= wx.Button(panel, wx.ID_ANY, 'AButton')

s2.Add( b )
s1.Add( s2 )
gs.Add( s1, (row,col))
Run Code Online (Sandbox Code Playgroud)

答案(到目前为止):我发现了一段我不知道应该归功于哪些代码 - 似乎与dabo有关.它在dGridSizer.py中,但它做了类似我正在寻找的东西:

szitm= grid_sizer.FindItemAtPosition( (row,col) )
if szitm:
    if szitm.IsWindow():
        itm=szitm.GetWindow()
    elif szitm.IsSizer():
        itm=szitm.GetSizer()
    try: # in case some other IsSomething() I don't have covered
        grid_sizer.SetItemPosition( itm, (newrow,col))
    except:
        pass
Run Code Online (Sandbox Code Playgroud)

到目前为止,这似乎适用于我在网格中的所有情况.目前还不确定我是否理解它,我将不得不深入研究代码 - 现在只需要完成这项工作.

wxpython nested sizer

0
推荐指数
1
解决办法
1692
查看次数

wxpython gui没有正常显示

我在python中编写了一个程序,我使用了绝对定位,所有的大小和位置都以像素为单位指定.当我在我的电脑上运行时,它工作正常,但是当我在另一台PC上运行它没有正确显示时,组件彼此重叠,并且它们的位置不是它们应该的方式.这是一个ok gui的例子:http://postimg.org/image/e4od9f52f/ 这里是坏gui:http://postimg.org/image/jy30nq63r/

这只是一个例子,每个对话框都有这样的问题.

谁知道什么是问题?

先生,亚历山大

python wxpython

0
推荐指数
1
解决办法
141
查看次数

wxPython:如何将Button的大小缩小到标签文本的宽度?

我有一个FlexGridSizer,我添加了一堆TextCtrl,其中一些是供用户输入路径,所以我在那些TextCtrl框右侧的相邻列中有一个Button.标签文本是......我只在其中使用TextCtrl的列上调用AddGrowableCol ...这是我在for循环中添加Button的方法(我不使用addmany):

widgetItem = wx.Button(parent, -1, "...")
widgetItem.row=rowNum
widgetItem.col=colNum
widgetItem.target = lastTextBox
self.Bind(wx.EVT_BUTTON, self.getFile, widgetItem)
currentSizer.AddF(widgetItem, wx.SizerFlags(0).Border(wx.ALL, 5))
Run Code Online (Sandbox Code Playgroud)

wxwidgets wxpython

0
推荐指数
1
解决办法
1439
查看次数

Python / wxPython:如何将wx.Choice重置为默认值

我正在使用wxPython中的多个wx.Choice控件,并且我需要使用“重置”按钮来单击时恢复默认选项“-选择-”。无法实现这一点,我最近来的就是将其重置为空选项,这不是我们想要的。我希望按下重置按钮时出现默认选项“-选择-”。请参阅下面的代码。

data.py

import wx

class MyFrame1 ( wx.Frame ):

    def __init__( self, parent ):
        wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = wx.DefaultPosition, size = wx.Size( 250,300 ), style = wx.CAPTION|wx.CLOSE_BOX|wx.MINIMIZE_BOX|wx.SYSTEM_MENU|wx.TAB_TRAVERSAL )

        self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )

        DataBox = wx.BoxSizer( wx.HORIZONTAL )

        gSizer2 = wx.GridSizer( 0, 2, 0, 0 )

        self.Color_Label = wx.StaticText( self, wx.ID_ANY, u"Color:", wx.DefaultPosition, wx.DefaultSize, 0 )
        self.Color_Label.Wrap( -1 )
        self.Color_Label.SetFont( wx.Font( 13, 70, 90, 90, False, wx.EmptyString ) )

        gSizer2.Add( self.Color_Label, 0, wx.ALL, …
Run Code Online (Sandbox Code Playgroud)

python wxwidgets wxpython wxtextctrl python-2.7

0
推荐指数
1
解决办法
3032
查看次数

wxPython:检测鼠标点击位图

我正在尝试使用 wxpython 检测位图上的 CLI。on_click 过程似乎在没有 CLIC 的情况下运行,并且在单击时不运行。我做错了什么?

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#

import os
import wx
import wx.lib.agw.thumbnailctrl as TC
import Image

filename="Raphael-Poli-angle.png"
class MyForm(wx.Frame):
    def on_clic(self):
       print "clicked"

    def __init__(self):
        wx.Frame.__init__(self, None, wx.ID_ANY, "Choose Dot in Picture", size=(700,500))
        self.panel = wx.Panel(self, wx.ID_ANY)
        png = wx.Image(filename, wx.BITMAP_TYPE_ANY).ConvertToBitmap()
        image=wx.StaticBitmap(self.panel, -1, png, (1, 1), (png.GetWidth(), png.GetHeight()))
        image.Bind(wx.EVT_LEFT_DOWN, self.on_clic())
        self.Show(True)

if __name__ == "__main__":
    app = wx.App(False)
    frame = MyForm()
    app.SetTopWindow(frame)
    frame.Show()
    app.MainLoop()
Run Code Online (Sandbox Code Playgroud)

wxpython click onclick

0
推荐指数
1
解决办法
1789
查看次数

WxForms DateTime到Python DateTime

我需要从WxWidget转换DateTime

Fri Sep 28 00:00:00 2018
Run Code Online (Sandbox Code Playgroud)

为另一种格式:

28/09/18 20:35:00
Run Code Online (Sandbox Code Playgroud)

但我找不到任何事要做

wxwidgets wxpython python-3.x

0
推荐指数
1
解决办法
203
查看次数