这是wxWidgets论坛的中文版本。在这里,您可以用您的母语汉语讨论上面任一子论坛所涉及的所有关于wxWidgets的话题。欢迎大家参与到对有价值的帖子的中英互译工作中来!
-
swallow
- Earned a small fee
- Posts: 20
- Joined: Thu Jun 19, 2008 12:57 pm
Post
by swallow »
怎么实现位图按钮上文字滚动?像车站的和轻轨上的电子牌一样,滚动显示文字。
-
liuqi5521
- Earned some good credits
- Posts: 103
- Joined: Thu Apr 03, 2008 5:35 am
- Location: China
-
Contact:
Post
by liuqi5521 »
1.先用 wxBitmap 载入图片
2、创建一个 wxMemoryDC, SelectObject()选入刚才的位图。
3、用DrawText方法绘制文字,有一定偏移。
4、把位图对象赋值给按钮控件
要想滚动显示文字,在Timer里面不停的做上面的工作,每次改变偏移量。
-
bloodlee
- Experienced Solver
- Posts: 77
- Joined: Thu Nov 30, 2006 10:49 am
- Location: Shenzhen, CHN
Post
by bloodlee »
如果你的文字是位图的话,我觉得你也可以这样做.
1) 可能要重新写OnPaint()(可以自己写个新的Handler, 专门去管理EVT_PAINT事件).
2) 定时器是一定要用了吧.
2) 位图读到一个wxMemoryDC里. 最后再用wxDC::Blit,把位图的DC帖到BUTTON的DC上. 因为存在前后的拼接, Blit可能要用两次.
以上意见, 仅供参考.
-
swallow
- Earned a small fee
- Posts: 20
- Joined: Thu Jun 19, 2008 12:57 pm
Post
by swallow »
解决了,谢谢楼上两位
-
kevin_fly
- Experienced Solver
- Posts: 50
- Joined: Tue Apr 15, 2008 12:55 am
Post
by kevin_fly »
来这个论坛多次了,也提问过好几个问题,但是今天才知道还可以散分的。
所以:建议在新建一个问题时,可以选择给这个问题悬赏多少分?
还是参考CSDN的做法比较容易让人接受。
希望wxWidgets论坛能够健康快速的发展壮大起来。因为我们的确是需要这方面的帮助。
-
Utensil
- Moderator
- Posts: 423
- Joined: Sun Feb 03, 2008 11:38 am
- Location: China
Post
by Utensil »
建议在新建一个问题时,可以选择给这个问题悬赏多少分?
其实wxAward只跟等级挂钩,而且等级也只意味着自己头像下面多了一句俏皮话,不像CSDN上面分可以拿来做很多事。所以这里分高意义不大。
一个人如果协助了别人得到1分,如果真的帮助到别人得到5分,有了这样清楚明白的给分规则,别人一看你的wxAward点数,就可以大约了解你帮助别人的程度,这比由提问者随意指定悬赏分要好。
我个人希望,wxAward系统更多是一种娱乐,更多是一种意思意思:提问者用以表达谢意,回答者获得一种精神上的满足——我的回答帮到忙了、被接受了。
Assist和Accept还有另外一个作用:导航。设想有一个人在论坛里搜索自己问题的答案,发现了一个长贴,如果有了Accept,他就知道这个问题有了答案;有了Assist,可以帮助他在长贴中找到有用的信息。
-Utensil
-
bloodlee
- Experienced Solver
- Posts: 77
- Joined: Thu Nov 30, 2006 10:49 am
- Location: Shenzhen, CHN
Post
by bloodlee »
Utensil wrote:
一个人如果协助了别人得到1分,如果真的帮助到别人得到5分,有了这样清楚明白的给分规则,别人一看你的wxAward点数,就可以大约了解你帮助别人的程度,这比由提问者随意指定悬赏分要好。
我个人希望,wxAward系统更多是一种娱乐,更多是一种意思意思:提问者用以表达谢意,回答者获得一种精神上的满足——我的回答帮到忙了、被接受了。
Hi, Utensil.
支持!!!
-
swallow
- Earned a small fee
- Posts: 20
- Joined: Thu Jun 19, 2008 12:57 pm
Post
by swallow »
现在滚动字幕是实现了,可在WCE下闪烁,有什么办法让位图按钮不闪烁?以前我用wxMemoryDC,可现在用的::DrawText(hdc, text, text.length(), &rc, DT_CENTER | DT_CALCRECT);还是写在一个自定义的函数里面的,不知道该怎么办了。
-
kingkamg
- I live to help wx-kind
- Posts: 187
- Joined: Tue Apr 08, 2008 1:45 pm
Post
by kingkamg »
处理下wxEraseEvent事件,也可以参看:Freeze和thaw两个方法,记得那本中文教材里面有详细讲述,自己看下就知道了