1

プログラムの周囲に境界線を付けたくないのですが、wx.NO_BORDERをフレームに設定すると、この小さな青いボックスが表示され、すべてが表示されます。

すべてを壊さずにwx.no_borderを設定するにはどうすればよいですか?

私はすべてを試しました!

ありがとう。

コード:

import wx
class nGUI(wx.Frame):
  def __init__(self,parent,id):
    wx.Frame.__init__(self,parent,id,size=(500,160),style=wx.DEFAULT_FRAME_STYLE & wx.NO_BORDER & ~wx.SYSTEM_MENU)
    panel=wx.Panel(self)
    self.Centre()
    image_file = '../nGFX/nPySlim.png'
    bmp1 = wx.Image(image_file, wx.BITMAP_TYPE_ANY).ConvertToBitmap()
    panel.bitmap1 = wx.StaticBitmap(panel, -1, bmp1, (0, 0))
    textbox = wx.TextCtrl(panel.bitmap1, -1, pos=(245,50), size=(210, 28))
    font = wx.Font(14,wx.FONTFAMILY_SWISS,wx.FONTSTYLE_SLANT,wx.FONTWEIGHT_NORMAL)
    textbox.SetFont(font)
    wx.Button(panel.bitmap1, -1, pos=(413,90), size=(60, 25), label="Generate")

if __name__=='__main__':
  app=wx.PySimpleApp()
  frame=nGUI(parent=None,id=-1)
  frame.Show()
  app.MainLoop()
4

2 に答える 2

2

|スタイルの追加を使用^し、それらを削除する必要があります

それでwx.DEFAULT_FRAME_STYLE | wx.NO_BORDER ^ wx.SYSTEM_MENU

于 2012-12-06T13:31:15.657 に答える
0

あなたのプログラムがフラグで失敗した理由はわかりませんwx.NO_BORDERが、問題は私にはありませんでした。

どのように実行しても、セグメンテーション違反が発生しました(wxPythonのCコードに問題があることを示しています)

textbox問題は、との親がであるはずだったのに、であったことでしwx.Buttonた。また、ビットマップは子アイテムを持つことを意図していないため、それは理にかなっています。奇妙なことはそれがどのように失敗したかであり、それはwxの問題です。panel.bitmap1panel

このバージョンのwxPython:をPython2.7で実行してい2.8.12.1 (gtk2-unicode)ます。問題がwxPython自体にあることを考えると、重要かもしれません。

于 2012-12-06T08:04:57.813 に答える