﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-brent's hut-随笔分类-wxWidgets</title><link>http://www.cppblog.com/aqazero/category/2111.html</link><description /><language>zh-cn</language><lastBuildDate>Wed, 27 Aug 2008 15:49:15 GMT</lastBuildDate><pubDate>Wed, 27 Aug 2008 15:49:15 GMT</pubDate><ttl>60</ttl><item><title>图形文本编辑器的源码和简单文档</title><link>http://www.cppblog.com/aqazero/archive/2008/08/27/60165.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Wed, 27 Aug 2008 08:05:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2008/08/27/60165.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/60165.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2008/08/27/60165.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/60165.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/60165.html</trackback:ping><description><![CDATA[我说的图形文本编辑器不是纯文本编辑，见 <a target="_blank" title="自己实现图形文本编辑器" href="http://www.cppblog.com/aqazero/archive/2006/12/01/15835.html">自己实现图形文本编辑器</a> 或者 <a target="_blank" title="Graphical text proposal (draft)" href="http://www.eclipse.org/gef/team/wysiwyg.html">Graphical Text Proposal (Draft)</a><br><br><a target="_blank" title="Demo 地址" href="http://www.cppblog.com/Files/aqazero/BrentEditor_demo.zip">Demo EXE 地址</a> (无公害，因为是用wxWidgets，连Icon都没有，经常把人给吓着了。该程序对硬件无要求，对使用者有一定要求...)<br><br><a target="_blank" title="源代码" href="http://www.cppblog.com/Files/aqazero/BrentEditor.rar">源代码地址</a><br><br>编译需要<a target="_blank" title="wxWidgets" href="http://www.wxwidgets.org/">wxWidgets</a>。在这之后再没用过wxWidgets了，感觉就是另一套MFC。<br><br>抓个图:<br><img src="http://www.cppblog.com/images/cppblog_com/aqazero/editor.JPG" border="0"><br><br>写到Table和导出html部分的时候就力不从心了，草草了事。 导出html是做得最人模狗样，但却最败絮其中的部分。(英文版操作系统下导出html会crash，原因未知)<br><br>一直有用C#重新写一个的冲动，只是到时一定又是虎头蛇尾。<br>       <img src ="http://www.cppblog.com/aqazero/aggbug/60165.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2008-08-27 16:05 <a href="http://www.cppblog.com/aqazero/archive/2008/08/27/60165.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>自己实现图形文本编辑器</title><link>http://www.cppblog.com/aqazero/archive/2006/12/01/15835.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Fri, 01 Dec 2006 02:06:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2006/12/01/15835.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/15835.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2006/12/01/15835.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/15835.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/15835.html</trackback:ping><description><![CDATA[我说的图形文本编辑器就是不用windows控件如editbox,richedit之类实现文档编辑，不是纯文本编辑。<br />要实现图形绘制，象visio那样；要能画表格，象word那样；要能导出html，象word那样。<br />以后要在此基础上实现表单绘制和流程绘制。<br /><br />程序目前完成了一小部分：<br /><br /><a class="" title="" href="/Files/aqazero/BrentEditor_demo.zip" target="">http://www.cppblog.com/Files/aqazero/BrentEditor_demo.zip</a><br /><br />实现的功能有：<br /><br />1) 编辑文本<br />双击可编辑对象，将进入编辑模式。在编辑模式下按ESC或者单击不可编辑对象，将退出编辑模式。按住鼠标移动可以选择文本，实现了上下左右键的navigation，实现了回车分段。<br />没有实现对英语单词整个单词的处理。分行会发生在单词的任何部分。主要考虑面对的是中文用户。<br /><br />2) 绘制DIV，按工具栏上的方框，直接在画布上点击拉动。<br /><br />3) 支持无限undo/redo，Ctrl+Z Ctrl+Y<br /><br />4) 支持文本的复制粘贴, Ctrl+C Ctrl+V ，剪切未实现。<br /><br />5) 可以导出到html文件，菜单File - export html<br />导出html后，排版可能和程序不同。<br /><br />6) 实现了保存读取<br />保存的文件其实是个压缩文件。<br /><br />7）实现了部分table功能<br />要调整表格之前，请先选择定某单元格。<br />“绘制表格”功能目前还未支持undo/redo<br /><br />8) 目前的画布布局为 flow，对象的位置由flow算法决定，所以只能调整大小，不能调整位置。<br /><br />下一步将实现的是：<br /><br />1) 绘制table<br /><br />2) 更改字体<br /><br />3) 更改DIV、cell边框属性，设置填充颜色<br /><br />4) 实现absolute定位<br /><br />5) 实现折线绘制，以及智能连线(象viso中那样连接两个对象，自己拐弯的折线)<br /><br />...<br /><br />然后就是绘制workflow，连接数据库等等了。<br /><br />...<br /><img src ="http://www.cppblog.com/aqazero/aggbug/15835.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2006-12-01 10:06 <a href="http://www.cppblog.com/aqazero/archive/2006/12/01/15835.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>graphical text editor (二)(内有帅图)</title><link>http://www.cppblog.com/aqazero/archive/2006/11/22/15544.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Wed, 22 Nov 2006 08:42:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2006/11/22/15544.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/15544.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2006/11/22/15544.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/15544.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/15544.html</trackback:ping><description><![CDATA[使用wxWidgets库。
文本编辑是自己实现的，没有用到控件。
导出到html。<br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt1.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt2.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt3.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt4.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt5.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt6.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt7.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt8.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt9.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt10.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt11.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt12.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/aqazero/gt13.jpg" alt="gt1.jpg" align="middle" border="0" /><br /><br /><img src ="http://www.cppblog.com/aqazero/aggbug/15544.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2006-11-22 16:42 <a href="http://www.cppblog.com/aqazero/archive/2006/11/22/15544.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>对wxWidgets中wxMenuItem的修改</title><link>http://www.cppblog.com/aqazero/archive/2006/07/17/10153.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Mon, 17 Jul 2006 03:03:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2006/07/17/10153.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/10153.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2006/07/17/10153.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/10153.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/10153.html</trackback:ping><description><![CDATA[
		<p>问题：<br />用DialogBlocks设计了一个菜单，菜单中的图标大小为16X16，并在DialogBlocks自动生成的代码CreateControls()函数的后面设置所有菜单项的颜色为红色。运行后效果如图。<br /><img height="293" alt="wxMenuOld.jpg" src="http://www.cppblog.com/images/cppblog_com/aqazero/wxMenuOld.jpg" width="243" border="0" /><br />两个菜单项:Page Setup和Exit不但没有显示红色，而且与其它菜单项无法对齐。<br /><br />原因：<br />查看了一下源代码，发现menu item的ownerdraw属性是在wxMenu::Append()时决定的。在调用wxMenu::Append()之后的代码中对wxMenuItem的修改不会影响到实际物理菜单的ownerdraw属性。<br /><br />解决:<br />把所有非separator的所有菜单设置为owndraw。<br />修改wxWidgets目录下的 \src\msw\menu.cpp文件:<br />bool wxMenu::DoInsertOrAppend(wxMenuItem *pItem, size_t pos)<br />{<br />#if wxUSE_ACCEL<br />    UpdateAccel(pItem);<br />#endif // wxUSE_ACCEL</p>
		<p> <font color="#ffa500">pItem-&gt;SetOwnerDrawn(!pItem-&gt;IsSeparator()); //Brent<br /></font> ...<br />}<br /><br />效果:<br /><img height="332" alt="mywxMenu.jpg" src="http://www.cppblog.com/images/cppblog_com/aqazero/mywxMenu.jpg" width="308" border="0" /></p>
<img src ="http://www.cppblog.com/aqazero/aggbug/10153.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2006-07-17 11:03 <a href="http://www.cppblog.com/aqazero/archive/2006/07/17/10153.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>wxWidgets的网站</title><link>http://www.cppblog.com/aqazero/archive/2006/07/13/9812.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Thu, 13 Jul 2006 08:29:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2006/07/13/9812.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/9812.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2006/07/13/9812.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/9812.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/9812.html</trackback:ping><description><![CDATA[
		<br />
		<a href="http://www.wxwidgets.org">http://www.wxwidgets.org</a>
		<br />
		<a href="http://www.wxcommunity.com/">http://www.wxcommunity.com/</a>
		<br />
		<a href="http://wxcode.sourceforge.net/">http://wxcode.sourceforge.net/</a>
		<br />
		<br />DialogBlocks:<a href="http://www.anthemion.co.uk/dialogblocks/"><br />http://www.anthemion.co.uk/dialogblocks/</a><br />Name：allanz<br />Registration key：EDFD4A47-835D5F34-01738B26<br />wjh36468173-25F8DABC-35B70E68<br /><br />基于wxWidgets的代数编辑器<br /><a href="http://sourceforge.net/projects/wxmaxima">http://sourceforge.net/projects/wxmaxima</a><br /><br />停靠栏<br /><a href="http://sourceforge.net/projects/wxextended">http://sourceforge.net/projects/wxextended</a><br /><br />CHM<br /><a href="http://sourceforge.net/projects/xchm/">http://sourceforge.net/projects/xchm/</a><br /><br />MSN<br /><a href="http://sourceforge.net/projects/wxmsn">http://sourceforge.net/projects/wxmsn</a><img src ="http://www.cppblog.com/aqazero/aggbug/9812.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2006-07-13 16:29 <a href="http://www.cppblog.com/aqazero/archive/2006/07/13/9812.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>