为了账号安全,请及时绑定邮箱和手机立即绑定

如何使我刚刚更改的文本居中?

如何使我刚刚更改的文本居中?

慕娘9325324 2023-07-18 17:33:45
中心有一个静态文本,通过单击按钮将其更改为文件中的随机文本。这就是问题本身:按下按钮后,新文本从前一个和平文本的开头开始,而不是从中心开始。问题如何解决?import wximport randomclass TestWindow(wx.Frame):    def chBtnClick(self, event):        f = open("Words.txt", "r")        random_word = random.choice(f.read().split("\n"))        self.chText.SetLabel(random_word)            def __init__(self, parent, title):        wx.Frame.__init__(self, None, title=title, size=(300, 200))        self.panel = wx.Panel(self, wx.ID_ANY)        VSizer = wx.BoxSizer(wx.VERTICAL)        self.chText = wx.StaticText(self.panel, wx.ID_ANY, label="Click Random")        VSizer.Add(self.chText, 0, wx.CENTER | wx.ALL, 5)                self.chBtn = wx.Button(self.panel, wx.ID_ANY, label="Random!")        VSizer.Add(self.chBtn, 0, wx.CENTER|wx.ALL, 5)        self.chBtn.Bind(wx.EVT_BUTTON, self.chBtnClick)        self.panel.SetSizer(VSizer)        self.Centre()        self.Show()if __name__ == "__main__":    app = wx.App()    frame = TestWindow(None, "ExBurate Test ver.")    app.MainLoop()之前按钮按钮后
查看完整描述

1 回答

?
蓝山帝景

TA贡献1843条经验 获得超7个赞

更改文本后,self.panel.Layout()调用重新居中对象

def chBtnClick(self, event):
    f = open("Words.txt", "r")
    random_word = random.choice(f.read().split("\n"))
    self.chText.SetLabel(random_word)
    self.panel.Layout()


查看完整回答
反对 回复 2023-07-18
  • 1 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信