免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5543 | 回复: 3

请教 wxpython, 类似于“记事本”的 "自动换行"功能 [复制链接]

论坛徽章:
0
发表于 2013-08-21 20:26 |显示全部楼层
本帖最后由 avyou 于 2013-08-22 10:23 编辑

想实现一个类似于windows 记事本菜单上的 "自动换行" 功能,

新建一个文本框后:
  1. MainText = wx.TextCtrl(self.panel,-1, "", size=(-1,-1),style=wx.TE_MULTILINE|wx.TE_WORDWRAP)
复制代码
通过 SetWindowStyle() 方法无法改变样式:
  1. MainText.SetWindowStyle(wx.TE_MULTILINE|wx.HSCROLL)    ##wx.HSCROLL 为不换行
  2. MainText.SetWindowStyle(wx.TE_MULTILINE|wx.TE_WORDWRAP) ##wx.TE_WORDWRAP 为根据单词自动换行
复制代码
我折腾了好久,网上中英文搜遍了没有找到方法,请教各位有什么方法吗? 请指点一下,先谢谢了!

论坛徽章:
3
卯兔
日期:2013-08-15 13:17:31处女座
日期:2014-01-10 11:35:23双子座
日期:2014-01-25 02:16:06
发表于 2013-08-21 22:51 |显示全部楼层
http://www.oschina.net/question/69055_53148
这个也许能帮到你。

论坛徽章:
0
发表于 2013-08-22 10:22 |显示全部楼层
谢谢你,这个我也搜到了,但说得不太详细,不懂啊。我按照他的:
"参照wxPython自带Demo里面的例子,是把已经生成的wx.TextCtrl的Style参数取出来,然后重新Init一个新的wx.TextCtrl并且把旧的wx.TextCtrl控件Destroy掉。"

做了,但实现不了,可能是我懂得不太明白。

论坛徽章:
0
发表于 2013-08-25 18:31 |显示全部楼层
我搞定了,创建新的wx.Textctrl ,  把原wx.TextCtrl 销毁或隐藏,

记得需要SendSizeEvent() 和 Refresh() (我就是没有做这个步骤,所以一直没通过)

CU版的 python 不怎么给力啊,问了几个问题都没人帮得上忙。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP