﻿<?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>博客园-一缸水</title><link>http://www.cnblogs.com/vento/</link><description>专注于.NET技术学习和分享</description><language>zh-cn</language><lastBuildDate>Tue, 07 Oct 2008 08:47:28 GMT</lastBuildDate><pubDate>Tue, 07 Oct 2008 08:47:28 GMT</pubDate><ttl>60</ttl><item><title>我也订个计划吧</title><link>http://www.cnblogs.com/vento/archive/2008/10/07/1305166.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Mon, 06 Oct 2008 16:22:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/10/07/1305166.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1305166.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/10/07/1305166.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1305166.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1305166.html</trackback:ping><description><![CDATA[<p>毕业后，一直从事.net方面的工作，从生疏到熟悉，感觉现在已经能胜任开发工作了。不过也感觉现在到了瓶颈期，不知怎样学习才能使技术再进一步，有时也质疑自己究竟是否适合编程。而感情生活方面也是一如既往地如流水。记下些计划希望自己能在两年内慢慢地一个个画掉吧。</p>
<p>1、合理理财，不能再做月光族了</p>
<p>2、练好英语，虽然现在看英文文章大概明白，但听说实在是烂。。。</p>
<p>3、提高与人沟通、交流的能力（这个太虚了，实在难）</p>
<p>4、抽时间多看书</p>
<p>。。。</p>
<img src ="http://www.cnblogs.com/vento/aggbug/1305166.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42825/" target="_blank">[新闻]GMail Labs 新功能 - 做数学题确认是否发出邮件</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>NExcelAPI使用测试</title><link>http://www.cnblogs.com/vento/archive/2008/09/27/1301013.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Sat, 27 Sep 2008 10:21:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/09/27/1301013.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1301013.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/09/27/1301013.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1301013.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1301013.html</trackback:ping><description><![CDATA[<p>这几天上网时无意中看到这篇文章（<a title="利用java的开源组件JExcel创建无差异的Excel文件,并且导入到.net项目中去" href="http://www.cnblogs.com/cnherman/archive/2008/09/19/1293881.html">利用java的开源组件JExcel创建无差异的Excel文件,并且导入到.net项目中去</a>），看到评论里有人说有老外利用J#把JExcelAPI编译为.NET可用的组件了。当即下载下来测试，Excel文件读写竟然都正常ORZ。当然，不知这种方式编译出来的组件是否存在bug，但几天测试下来一般功能还是正常的。</p>
<p>下面说下这几天的测试情况：</p>
<p>1、在.net上使用需要依赖一个j#的库文件vjslib.dll，只要安装了j#的发行包，在以下目录就能找到这个组件<font face="Verdana">C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727</font></p>
<p>在VS下直接添加引用就可以了。</p>
<p>2、修改单元格的值<font face="Verdana"></p>
<div class="cnblogs_code"><img id="Code_Closed_Image_162114" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_162114').style.display='none'; document.getElementById('Code_Open_Image_162114').style.display='inline'; document.getElementById('Code_Open_Text_162114').style.display='inline';" height="16" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" align="top"><img id="Code_Open_Image_162114" style="display: none" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_162114').style.display='none'; getElementById('Code_Closed_Image_162114').style.display='inline'; getElementById('Code_Closed_Text_162114').style.display='inline';" height="16" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" align="top"><span class="cnblogs_code_Collapse" id="Code_Closed_Text_162114">Code</span><span id="Code_Open_Text_162114" style="display: none"><br />
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008000">//</span><span style="color: #008000">&nbsp;直接修改原单元格的值</span><span style="color: #008000"><br />
</span><span style="color: #000000">WritableCell&nbsp;cell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.getWritableCell(</span><span style="color: #800080">0</span><span style="color: #000000">,&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">);<br />
</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(cell.getType()&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;CellType.LABEL)&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;判断单元格类型</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;((Label)cell).setString(</span><span style="color: #800000">"</span><span style="color: #800000">excel&nbsp;test</span><span style="color: #800000">"</span><span style="color: #000000">);<br />
<br />
</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;覆盖原有单元格（原有单元格格式会丢失！）</span><span style="color: #008000"><br />
</span><span style="color: #000000">WritableCell&nbsp;cell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;jxl.write.Label(</span><span style="color: #800080">0</span><span style="color: #000000">,&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">,&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">excel&nbsp;test</span><span style="color: #800000">"</span><span style="color: #000000">);<br />
sheet.addCell(cell);<br />
<br />
</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;覆盖原有单元格（保留格式）</span><span style="color: #008000"><br />
</span><span style="color: #000000">WritableCell&nbsp;cell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.getWritableCell(</span><span style="color: #800080">0</span><span style="color: #000000">,&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">);<br />
jxl.format.CellFormat&nbsp;format&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;cell.getCellFormat();<br />
</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(format&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">)<br />
&nbsp;&nbsp;&nbsp;&nbsp;cell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;jxl.write.Label(</span><span style="color: #800080">0</span><span style="color: #000000">,&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">,&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">excel&nbsp;test</span><span style="color: #800000">"</span><span style="color: #000000">,&nbsp;format);<br />
</span><span style="color: #0000ff">else</span><span style="color: #000000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;cell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;jxl.write.Label(</span><span style="color: #800080">0</span><span style="color: #000000">,&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">,&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">excel&nbsp;test</span><span style="color: #800000">"</span><span style="color: #000000">);<br />
sheet.addCell(cell);<br />
</span></span></div>
<p></font>&nbsp;</p>
<p>3、工作表区块复制</p>
<p>发现没有区块复制的功能，只能利用<font face="Verdana">WritableCell</font>的copyTo()函数自己实现了。不过这个函数只能复制单元格的内容和格式，像合并单元格范围和行的格式等都需要另外复制。下面是我写的复制区块的函数：</p>
<div class="cnblogs_code"><img id="Code_Closed_Image_180018" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_180018').style.display='none'; document.getElementById('Code_Open_Image_180018').style.display='inline'; document.getElementById('Code_Open_Text_180018').style.display='inline';" height="16" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" align="top"><img id="Code_Open_Image_180018" style="display: none" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_180018').style.display='none'; getElementById('Code_Closed_Image_180018').style.display='inline'; getElementById('Code_Closed_Text_180018').style.display='inline';" height="16" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" align="top"><span class="cnblogs_code_Collapse" id="Code_Closed_Text_180018">Code</span><span id="Code_Open_Text_180018" style="display: none"><br />
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;summary&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;工作表内区块复制（不支持图片，图表等复杂对象复制）<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;/summary&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;param&nbsp;name="sheet"&gt;</span><span style="color: #008000">工作表</span><span style="color: #808080">&lt;/param&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;param&nbsp;name="srcCol"&gt;</span><span style="color: #008000">区块列索引</span><span style="color: #808080">&lt;/param&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;param&nbsp;name="srcRow"&gt;</span><span style="color: #008000">区块行索引</span><span style="color: #808080">&lt;/param&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;param&nbsp;name="srcWidth"&gt;</span><span style="color: #008000">区块的宽度</span><span style="color: #808080">&lt;/param&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;param&nbsp;name="srcHeight"&gt;</span><span style="color: #008000">区块的高度</span><span style="color: #808080">&lt;/param&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;param&nbsp;name="decCol"&gt;</span><span style="color: #008000">区块的目标列索引</span><span style="color: #808080">&lt;/param&gt;</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">///</span><span style="color: #008000">&nbsp;</span><span style="color: #808080">&lt;param&nbsp;name="decRow"&gt;</span><span style="color: #008000">区块的目标行索引</span><span style="color: #808080">&lt;/param&gt;</span><span style="color: #808080"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;CopyRange(WritableSheet&nbsp;sheet,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcCol,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcRow,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcWidth,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcHeight,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;decCol,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;decRow)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CopyCells(sheet,&nbsp;srcCol,&nbsp;srcRow,&nbsp;srcWidth,&nbsp;srcHeight,&nbsp;decCol,&nbsp;decRow);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CopyMergeCells(sheet,&nbsp;srcCol,&nbsp;srcRow,&nbsp;srcWidth,&nbsp;srcHeight,&nbsp;decCol,&nbsp;decRow);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CopyRowFormat(sheet,&nbsp;srcRow,&nbsp;srcHeight,&nbsp;decRow);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;CopyCells(WritableSheet&nbsp;sheet,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcCol,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcRow,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcWidth,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcHeight,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;decCol,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;decRow)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WritableCell&nbsp;newCell;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WritableCell&nbsp;writeCell;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cell&nbsp;readCell;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jxl.format.CellFormat&nbsp;readFormat;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">0</span><span style="color: #000000">;&nbsp;i&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">&nbsp;srcHeight;&nbsp;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;j&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">0</span><span style="color: #000000">;&nbsp;j&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">&nbsp;srcWidth;&nbsp;j</span><span style="color: #000000">++</span><span style="color: #000000">)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;readCell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.getCell(srcCol&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;j,&nbsp;srcRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;i);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;readFormat&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;readCell.getCellFormat();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(readCell.getType()&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;CellType.EMPTY&nbsp;</span><span style="color: #000000">&amp;&amp;</span><span style="color: #000000">&nbsp;readFormat&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">)&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">没有格式的空单元格不处理</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">continue</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writeCell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.getWritableCell(srcCol&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;j,&nbsp;srcRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;i);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;newCell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;writeCell.copyTo(srcCol&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;j&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;decCol,&nbsp;srcRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;decRow);<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sheet.addCell(newCell);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;CopyRowFormat(WritableSheet&nbsp;sheet,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcRow,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcHeight,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;decRow)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CellView&nbsp;cellView;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">0</span><span style="color: #000000">;&nbsp;i&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">&nbsp;srcHeight;&nbsp;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cellView&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.getRowView(srcRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;i);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sheet.setRowView(decRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;i,&nbsp;cellView);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;CopyMergeCells(WritableSheet&nbsp;sheet,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcCol,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcRow,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcWidth,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcHeight,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;decCol,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;decRow)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Range[]&nbsp;ranges</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.getMergedCells();&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;获取工作表现有单元格</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cell&nbsp;brCell;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;合并格的下对角单元格</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cell&nbsp;ltCell;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;合并格的上对角单元格</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;w1;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;原区域的上对角到合并格上对角的水平距离</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;h1;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;原区域的上对角到合并格上对角的垂直距离</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;w2;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;合并格的宽度</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;h2;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;合并格的高度</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i</span><span style="color: #000000">=</span><span style="color: #800080">0</span><span style="color: #000000">;&nbsp;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">ranges.Length;&nbsp;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(</span><span style="color: #000000">!</span><span style="color: #000000">IsInRange(ranges[i],&nbsp;srcCol,&nbsp;srcRow,&nbsp;srcWidth,&nbsp;srcHeight))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">continue</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brCell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;ranges[i].getBottomRight();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ltCell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;ranges[i].getTopLeft();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w1&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;ltCell.getColumn()&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;srcCol;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;h1&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;ltCell.getRow()&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;srcRow;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w2&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;brCell.getColumn()&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;ltCell.getColumn();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;h2&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;brCell.getRow()&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;ltCell.getRow();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sheet.mergeCells(decCol&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;w1,&nbsp;decRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;h1,&nbsp;decCol&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;w1&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;w2,&nbsp;decRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;h1&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;h2);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">bool</span><span style="color: #000000">&nbsp;IsInRange(Range&nbsp;merge,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcCol,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcRow,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcWidth,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;srcHeight)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">bool</span><span style="color: #000000">&nbsp;flag&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">true</span><span style="color: #000000">;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;判断合并单元格上对角是否落在区块内</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cell&nbsp;cell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;merge.getTopLeft();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(cell.getRow()&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">&nbsp;srcRow)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;flag&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">false</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(cell.getColumn()&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">&nbsp;srcCol)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;flag&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">false</span><span style="color: #000000">;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;判断合并单元格下对角是否落在区块内</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cell&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;merge.getBottomRight();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(cell.getRow()&nbsp;</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;(srcRow&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;srcHeight))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;flag&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">false</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(cell.getColumn()&nbsp;</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;(srcCol&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;srcWidth))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;flag&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">false</span><span style="color: #000000">;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;flag;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
<p>&nbsp;</p>
<p>4、下面是我写的一个demo，根据excel模板输出内容。只要在excel模板的单元格中写上格式内容：$数据库列名$，程序就会在指定单元格内写上数据库对应的数据。现在支持输出三种格式的报表：</p>
<p>1、数据表数据导出</p>
<p><img height="350" alt="" src="http://www.cnblogs.com/images/cnblogs_com/vento/1111111111.gif" width="693" border="0" /></p>
<p>2、<font face="Verdana">分页<font face="Verdana">导出数据</font></font></p>
<p><img height="348" alt="" src="http://www.cnblogs.com/images/cnblogs_com/vento/2222222222.gif" width="702" border="0" /></p>
<p>3、<font face="Verdana">导出数据到一个sheet中</font></p>
<p><img height="435" alt="" src="http://www.cnblogs.com/images/cnblogs_com/vento/333333333.gif" width="693" border="0" /></p>
<p>&nbsp;</p>
<p><a title="demo下载" href="http://files.cnblogs.com/vento/NExcelAPI_demo.rar">demo下载</a></p>
<img src ="http://www.cnblogs.com/vento/aggbug/1301013.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42824/" target="_blank">[新闻]OpenOffice四处创造纪录 占有全球25%办公软件市场</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>常用的开源组件</title><link>http://www.cnblogs.com/vento/archive/2008/09/23/1296983.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Tue, 23 Sep 2008 07:44:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/09/23/1296983.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1296983.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/09/23/1296983.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1296983.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1296983.html</trackback:ping><description><![CDATA[<p><strong>1、ZedGraph统计图组件</strong></p>
<p><img height="186" alt="" src="http://www.cnblogs.com/images/cnblogs_com/vento/1111111.gif" width="333" border="0" /><img alt="" src="http://www.cnblogs.com/images/cnblogs_com/vento/222222222.gif" border="0" /></p>
<p><a title="主页下载" href="http://zedgraph.org/wiki/index.php?title=Main_Page">主页下载</a></p>
<p><strong>2、Excel文件读写组件NExcelAPI</strong></p>
<p>这个组件是根据java开源项目JExcelAPI，利用J#编译而成的组件。下面可下载到我编译的最新2.6.8版，大家也可以到JExcelAPI的官方网址（<a title="http://jexcelapi.sourceforge.net/" href="http://jexcelapi.sourceforge.net/">http://jexcelapi.sourceforge.net/</a>）下载最新的源码自行编译。需要VS2005+J#</p>
<p>相关文档：<a title="http://www.docjar.com/projects/jexcelapi_2_6_8-code.html" href="http://www.docjar.com/projects/jexcelapi_2_6_8-code.html">http://www.docjar.com/projects/jexcelapi_2_6_8-code.html</a></p>
<p><a title="点击下载NExcelAPI 2.6.8" href="http://files.cnblogs.com/vento/NExcelAPI_2.6.8.rar">点击下载NExcelAPI 2.6.8</a></p>
<img src ="http://www.cnblogs.com/vento/aggbug/1296983.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42823/" target="_blank">[新闻]云计算硝烟四起 IBM携Bluehouse参战</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>去掉qq空间不能添加带“=”号的网络音乐地址限制</title><link>http://www.cnblogs.com/vento/archive/2008/09/20/1294552.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Fri, 19 Sep 2008 17:46:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/09/20/1294552.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1294552.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/09/20/1294552.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1294552.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1294552.html</trackback:ping><description><![CDATA[<p>只要在网络音乐添加界面，在浏览器址址栏运行下面的js就可以了。</p>
<div class="cnblogs_code"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000">javascript:alert(document.tmusic.document.mainFrame.document.getElementsByTagName(</span><span style="color: #000000">'</span><span style="color: #000000">form</span><span style="color: #000000">'</span><span style="color: #000000">)[&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">&nbsp;].onsubmit</span><span style="color: #000000">=</span><span style="color: #000000">''</span><span style="color: #000000">)</span></div>
<p>看来腾讯的开发人员像我一样偷懒不做服务器端验证<img alt="" src="http://www.cnblogs.com/Emoticons/QQ/14.gif" />&nbsp;</p>
<img src ="http://www.cnblogs.com/vento/aggbug/1294552.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42822/" target="_blank">[新闻]唱片商解密缘何反百度：态度强硬 人工干预明显</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>.NET流数据操作笔记</title><link>http://www.cnblogs.com/vento/archive/2008/08/12/1266082.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Tue, 12 Aug 2008 08:01:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/08/12/1266082.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1266082.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/08/12/1266082.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1266082.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1266082.html</trackback:ping><description><![CDATA[摘要: 在.net基类中，大多数用于处理输入/输出的类都能在System.IO命名空间中找到。&nbsp;&nbsp;<a href='http://www.cnblogs.com/vento/archive/2008/08/12/1266082.html'>阅读全文</a><img src ="http://www.cnblogs.com/vento/aggbug/1266082.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42821/" target="_blank">[新闻]国外媒体评出史上十大悬疑网络犯罪</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>编程技巧</title><link>http://www.cnblogs.com/vento/archive/2008/07/15/1243328.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Tue, 15 Jul 2008 05:09:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/07/15/1243328.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1243328.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/07/15/1243328.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1243328.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1243328.html</trackback:ping><description><![CDATA[1、用javascript防止重复提交表单<br />
<font face="Verdana">
<div class="cnblogs_code"><span style="color: #000000">function&nbsp;SubmitOnce(btn)&nbsp;&nbsp;&nbsp;<br />
{<br />
&nbsp;&nbsp;btn.value&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">正在提交<img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span style="color: #800000">"</span><span style="color: #000000">;<br />
&nbsp;&nbsp;btn.disabled</span><span style="color: #000000">=</span><span style="color: #0000ff">true</span><span style="color: #000000">;<br />
}</span></div>
使用时，只要把button的OnClientClick属性设为SubmitOnce(this)，并设<font face="Verdana">UseSubmitBehavior</font>为false，不然不能触发按钮事件。<font face="Verdana">UseSubmitBehavior</font></font>需设为false的原因，可参考以下两篇文章：<br />
<a title="禁用（灰化） Button 后提交的问题 " href="http://www.cnblogs.com/Jinglecat/archive/2007/07/10/811946.html">禁用（灰化） Button 后提交的问题 </a><br />
<a title="ASP.Net随想_服务器控件的页面请求模型  " href="http://www.cnblogs.com/Roping/archive/2007/04/11/709282.html">ASP.Net随想_服务器控件的页面请求模型 </a>
<img src ="http://www.cnblogs.com/vento/aggbug/1243328.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42820/" target="_blank">[新闻]AMD拆分方案已确认 获阿联酋84亿美元投资</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>FCKeditor使用</title><link>http://www.cnblogs.com/vento/archive/2008/07/01/1233084.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Tue, 01 Jul 2008 08:24:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/07/01/1233084.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1233084.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/07/01/1233084.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1233084.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1233084.html</trackback:ping><description><![CDATA[FCKeditor是B/S系统开发中经常用到的HTML编辑器，功能多，也支持表情。现在最新版是2.6.2，可在它官方主页下载：<font face="Verdana"><a href="http://www.fckeditor.net/download">http://www.fckeditor.net/download</a><br />
<br />
1、安装<br />
在ASP.NET系统中安装,除了要下载FCKeditor外，还要下载一个叫FCKeditor.NET的服务器控件，这两个都可以在上面的下载页面下载到。<br />
FCKeditor.NET压缩包解压后，找到合适的.NET版本，再添加到VS工具箱就可以用了。而FCKeditor解压后的文件还可以精简下，可以把所有以&#8220;_&#8221;下划线开头的文件和文件夹都删除，这些文件只要是一些范例，说明和源代码。<br />
之后只要把解压出的fckeditor整个文件夹放到系统的网站根目录中，再从VS的工具箱中把FCKeditor.NET控件拖入页面，设置其属性<font face="Verdana">BasePath</font>为./fckeditor/或fckeditor/，原来的默认值是/fckeditor/，设置完后就能正常使用了^^<br />
<br />
2、配置编辑器<br />
在fckeditor文件夹下有个命名为fckconfig.js的文件，这个是FCKeditor的配置文件，<font face="Verdana">可以根据自己需要更改它来自定义编辑器</font>。<br />
&#9674; 更改默认Enter键标签<br />
FCKeditor默认当按下Enter键时，会把之前输入的内容用&lt;p&gt;标签分段，假如这会影响你的页面样式的话，可通过设置更改该标签。在fckconfig.js文件中找到以下内容：<br />
<div class="cnblogs_code"><span style="color: #000000">FCKConfig.EnterMode&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">'</span><span style="color: #000000">p</span><span style="color: #000000">'</span><span style="color: #000000">&nbsp;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;p&nbsp;|&nbsp;div&nbsp;|&nbsp;br</span><span style="color: #008000"><br />
</span><span style="color: #000000">FCKConfig.ShiftEnterMode&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">'</span><span style="color: #000000">br</span><span style="color: #000000">'</span><span style="color: #000000">&nbsp;;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;p&nbsp;|&nbsp;div&nbsp;|&nbsp;br</span></div>
第一行的EnterMode即是按下Enter时的标签，可更改为注释中的p或div或br，下面一行是指按住shift键，按下Enter时的标签，默认为&lt;/br&gt;。<br />
<br />
&#9674; 更改toolbar工具条的默认项<br />
FCKeditor默认有两种工具栏样式，分别为Default和Basic，可通过设置控件FCKeditor.NET的<font face="Verdana">ToolbarSet</font>属性切换。当然，通过更改配置文件，你可以自定义自己的工具条或更改默认的工具条。在fckconfig.js中找到以下内容：<br />
<div class="cnblogs_code"><span style="color: #000000">FCKConfig.ToolbarSets[</span><span style="color: #000000">"</span><span style="color: #000000">Default</span><span style="color: #000000">"</span><span style="color: #000000">]&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;[<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Source</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">DocProps</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Save</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">NewPage</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Preview</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Templates</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Cut</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Copy</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Paste</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">PasteText</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">PasteWord</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Print</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">SpellCheck</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Undo</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Redo</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Find</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Replace</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">SelectAll</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">RemoveFormat</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Form</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Checkbox</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Radio</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">TextField</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Textarea</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Select</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Button</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">ImageButton</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">HiddenField</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">'</span><span style="color: #000000">/</span><span style="color: #000000">'</span><span style="color: #000000">,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Bold</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Italic</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Underline</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">StrikeThrough</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Subscript</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Superscript</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">OrderedList</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">UnorderedList</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Outdent</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Indent</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Blockquote</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">JustifyLeft</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">JustifyCenter</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">JustifyRight</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">JustifyFull</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Link</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Unlink</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Anchor</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Image</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Flash</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Table</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Rule</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Smiley</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">SpecialChar</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">PageBreak</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">'</span><span style="color: #000000">/</span><span style="color: #000000">'</span><span style="color: #000000">,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Style</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">FontFormat</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">FontName</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">FontSize</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">TextColor</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">BGColor</span><span style="color: #000000">'</span><span style="color: #000000">],<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">FitWindow</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">ShowBlocks</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">About</span><span style="color: #000000">'</span><span style="color: #000000">]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;No&nbsp;comma&nbsp;for&nbsp;the&nbsp;last&nbsp;row.</span><span style="color: #008000"><br />
</span><span style="color: #000000">]&nbsp;;<br />
<br />
FCKConfig.ToolbarSets[</span><span style="color: #000000">"</span><span style="color: #000000">Basic</span><span style="color: #000000">"</span><span style="color: #000000">]&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;[<br />
&nbsp;&nbsp;&nbsp;&nbsp;[</span><span style="color: #000000">'</span><span style="color: #000000">Bold</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Italic</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">OrderedList</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">UnorderedList</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Link</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">Unlink</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">-</span><span style="color: #000000">'</span><span style="color: #000000">,</span><span style="color: #000000">'</span><span style="color: #000000">About</span><span style="color: #000000">'</span><span style="color: #000000">]<br />
]&nbsp;;</span></div>
第一个就是默认的Default工具条，你可以直接更改或者按照给出的样式自已写一个。<br />
<br />
&#9674; 更改编辑区的样式<br />
我们看到的FCKeditor编辑区实际是一个HTML页面，所以我们可以随意更变它的样式，如字体大小，背景颜色等。在fckconfig.js可找到以下内容：<br />
<div class="cnblogs_code"><span style="color: #000000">FCKConfig.EditorAreaCSS&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;FCKConfig.BasePath&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">'</span><span style="color: #000000">css/fck_editorarea.css</span><span style="color: #000000">'</span><span style="color: #000000">&nbsp;;<br />
FCKConfig.EditorAreaStyles&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">''</span><span style="color: #000000">&nbsp;;</span></div>
第一行指定了一个外联的样式文件fck_editorarea.css，它的路径是/fckeditor/editor/css/fck_editorarea.css，找到它直接更改该文件就能改变编辑区样式。<br />
第二行是提供直接写css的，可像以下这样写：<br />
<div class="cnblogs_code"><span style="color: #800000">FCKConfig.EditorAreaStyles&nbsp;=&nbsp;'body</span><span style="color: #000000">{</span><span style="color: #ff0000">font-size</span><span style="color: #000000">:</span><span style="color: #0000ff">20pt</span><span style="color: #000000">}</span><span style="color: #800000">&nbsp;p&nbsp;</span><span style="color: #000000">{</span><span style="color: #ff0000">margin</span><span style="color: #000000">:</span><span style="color: #0000ff">0px</span><span style="color: #000000">}</span><span style="color: #800000">'&nbsp;;</span></div>
<br />
&#9674; 更改默认表情<br />
在fck_config.js文件中找到以下内容：<br />
<div class="cnblogs_code"><img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">FCKConfig.SmileyPath&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;FCKConfig.BasePath&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">'</span><span style="color: #800000">images/smiley/msn/</span><span style="color: #800000">'</span><span style="color: #000000">&nbsp;;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />FCKConfig.SmileyImages&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;[</span><span style="color: #800000">'</span><span style="color: #800000">regular_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">sad_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">wink_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">teeth_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">confused_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">tounge_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">embaressed_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">omg_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">whatchutalkingabout_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">angry_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">angel_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">shades_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">devil_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">cry_smile.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">lightbulb.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">thumbs_down.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">thumbs_up.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">heart.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">broken_heart.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">kiss.gif</span><span style="color: #800000">'</span><span style="color: #000000">,</span><span style="color: #800000">'</span><span style="color: #800000">envelope.gif</span><span style="color: #800000">'</span><span style="color: #000000">]&nbsp;;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />FCKConfig.SmileyColumns&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">8</span><span style="color: #000000">&nbsp;;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />FCKConfig.SmileyWindowWidth&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">320</span><span style="color: #000000">&nbsp;;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />FCKConfig.SmileyWindowHeight&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">210</span><span style="color: #000000">&nbsp;;</span></div>
SmileyPath是表情图像的存放路径，SmileyImages是图片名集，可以在smiley目录下新建个文件夹，把表情图片放进去，再更改SmileyImages为新的表情文件名就可以了。<br />
<br />
&#9674;&nbsp;扩展阅读</font> <br />
<a href="http://www.blueidea.com/tech/program/2005/2691.asp">FCKeditor 2.0 的设置.修改.使用</a> <br />
<a href="http://docs.fckeditor.net/FCKeditor_2.x/Developers_Guide/JavaScript_API">FCKeditor Javascript API</a> <br />
<a href="http://docs.fckeditor.net/FCKeditor_2.x/Developers_Guide/Configuration/Configuration_Options">FCKeditor Configuration Options</a> <br />
<a href="http://docs.fckeditor.net/FCKeditor_2.x/Developers_Guide">FCKeditor Developers Guide</a> <br />
 <img src ="http://www.cnblogs.com/vento/aggbug/1233084.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42817/" target="_blank">[新闻]雅虎新闻首页改版，宽屏、共享、组件</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>安装Discuz!NT到网站子目录</title><link>http://www.cnblogs.com/vento/archive/2008/07/01/1232752.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Mon, 30 Jun 2008 16:32:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/07/01/1232752.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1232752.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/07/01/1232752.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1232752.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1232752.html</trackback:ping><description><![CDATA[最近需要把bbs整合到一个网站上，最后选了Discuz!NT，因为是asp.net开发的，感觉以后同网站整合会方便些，下面是我的安装心得。<br />
假设网站的域名是：<a href="http://test/">http://test/</a>， 论坛安装到以下地址：<a href="http://test/bbs">http://test/bbs</a><br />
<br />
1、在网站的根目录下创建个名为bbs的子目录，并把Discuz的相关文件拷贝或上传到bbs目录中<br />
2、把bbs目录的<font face="Verdana">DNT.config</font>文件移到网站根目录，并确保该文件为UTF-8编码（可用记事本打开再另存为）<br />
3、右键<font face="Verdana">DNT.config</font>文件，选择&#8220;属性&#8221;，在&#8220;常规&#8221;选项卡中去掉只读属性，在&#8220;安全&#8221;选项卡中添加ASP.NET(Windows XP)或NETWORK SERVICE(Windows 2003)群组帐户，并赋予修改和写入权限<br />
3、右键bbs目录，选择&#8220;属性&#8221;，在&#8220;常规&#8221;选项卡中去掉只读属性，在&#8220;安全&#8221;选项卡中添加ASP.NET帐户或NETWORK SERVICE群组，并赋予修改和写入权限<br />
3、打开IIS，并把bbs目录设为应用程序<br />
4、这时应该能通过网址（<a href="http://test/bbs/install/index.aspx">http://test/bbs/install/index.aspx</a>）正常运行Discuz的安装向导了<br />
<br />
<br />
相关问题：<br />
1、XP上的IIS不能新建网站，只能是windows&nbsp;2000 server和windows 2003的系统上的IIS才能新建网站 <br />
2、假如在Discuz的安装向导的权限检测页面中，其他项都通过，就最后一项出现&#8220;<span style="color: red">您没有对CONFIG文件夹访问权限，详情参见安装文档</span>&#8221;的错误，请尝试运行以下命令：net stop w3svc &amp;&amp; net start w3svc，或在IIS中选择&#8220;重新启动IIS&#8221;命令，假如还是一样，建议在浏览器地址里面直接打开step3.aspx进行下一步安装<img alt="" src="http://www.cnblogs.com/Emoticons/QQ/sweatingbullets.gif" /><br />
3、选择access数据库，假如出现&#8220;<span style="color: red">系统未能初始化数据库，导致安装失败，请点击上一步检查相关设置是否正确</span>&#8221;错误，请再次运行命令<img alt="" src="http://www.cnblogs.com/Emoticons/QQ/sweatingbullets.gif" />：net stop w3svc &amp;&amp; net start w3svc<br />
<br />
捣鼓了几天Discuz，体会最深的就是，安装真是太麻烦了！！<br />
<br />
7.2日补充：<br />
4、假如想把论坛移到visual studio中编译，需要把bbs目录中的bin文件夹的所有dll复制一份到asp.net系统的bin文件夹下，还有当原来的asp.net系统使用到全局theme功能的话，编译后打开bbs目录的文件会出现&#8220;<font face="Verdana"><span style="color: red"><font face="Verdana">使用主题 css 文件要求页上有标头控件<span style="color: #000000">&#8221;的错误，这时需要改下bbs目录下的web.config配置，取消bbs目录下的theme功能，在web.config中找到pages节点像以下设置：<br />
</span></font>
<div class="cnblogs_code"><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&lt;</span><span style="color: #000000">pages<br />
<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;validateRequest</span><span style="color: #000000">=</span><span style="color: #800000">"</span><span style="color: #800000">false</span><span style="color: #800000">"</span><span style="color: #000000"><br />
<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enableEventValidation</span><span style="color: #000000">=</span><span style="color: #800000">"</span><span style="color: #800000">false</span><span style="color: #800000">"</span><span style="color: #000000"><br />
<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enableViewStateMac</span><span style="color: #000000">=</span><span style="color: #800000">"</span><span style="color: #800000">false</span><span style="color: #800000">"</span><span style="color: #000000"><br />
<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;viewStateEncryptionMode&nbsp;</span><span style="color: #000000">=</span><span style="color: #800000">"</span><span style="color: #800000">Never</span><span style="color: #800000">"</span><span style="color: #000000"><br />
<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;theme</span><span style="color: #000000">=</span><span style="color: #800000">""</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">新增，使全局theme功能对bbs目录无效</span><span style="color: #008000"><br />
<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">/&gt;</span><span style="color: #000000">&nbsp;</span></div>
<br />
</span></font>
<img src ="http://www.cnblogs.com/vento/aggbug/1232752.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42817/" target="_blank">[新闻]雅虎新闻首页改版，宽屏、共享、组件</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>.NET开发常用工具</title><link>http://www.cnblogs.com/vento/archive/2008/02/29/1086330.html</link><dc:creator>vento</dc:creator><author>vento</author><pubDate>Fri, 29 Feb 2008 08:13:00 GMT</pubDate><guid>http://www.cnblogs.com/vento/archive/2008/02/29/1086330.html</guid><wfw:comment>http://www.cnblogs.com/vento/comments/1086330.html</wfw:comment><comments>http://www.cnblogs.com/vento/archive/2008/02/29/1086330.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/vento/comments/commentRss/1086330.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/vento/services/trackbacks/1086330.html</trackback:ping><description><![CDATA[1、IE Developer Toolbar<br />
<p>简介：主要是基于IE下的一个插件，提供的功能如下：</p>
<ul>
    <li>浏览和修改Web页的文档对象模型（DOM）。
    <li>通过多种技术方式定位、选定Web页上的特定元素。
    <li>禁止或激活IE设置。
    <li>查看HTML对象的类名、ID，以及类似链接路径、tab顺序、快捷键等细节。
    <li>描绘表格、单元格、图片或选定标签的轮廓。
    <li>显示图片象素、大小、路径、替代文字等。
    <li>即时重定义浏览器窗口大小到800x600或自定义大小。
    <li>清空浏览器缓存和cookie，被清除项可从所有对象或给定域中选择。
    <li>直接访问关联W3C规范参考、IE开发组blog或其他来源。
    <li>显示设计时标尺，帮助对齐对象。 </li>
</ul>
&nbsp;&nbsp;&nbsp;&nbsp; <a title="Download!!" href="http://www.microsoft.com/downloads/details.aspx?familyid=e59c3964-672d-4511-bb3e-2d5e1db91038&amp;displaylang=en" target="_blank">Download!!</a><br />
<br />
2、Firebug<br />
<br />
Firebug是一个极为有价值的 Firefox 扩展，它能够与浏览器很好地整合在一起。对于 Web 开发者而言，使用该扩展可以直接对 CSS、HTML、JavaScript 进行编辑、调试、监视。<a></a> <br />
<p>Firebug 当前具有如下特性：
<ul>
    <li>包含步进式的 JavaScript 调试器。
    <li>使用状态栏图标监视网页中的错误。
    <li>控制台中可以显示来自 JavaScript 和 CSS 的错误。
    <li>可记录来自 JavaScript 的消息。
    <li>包含 JavaScript 命令行。
    <li>可监视 XMLHttpRequest 流量。
    <li>可检查 HTML 源代码、估量样式、事件、布局、以及 DOM 等。 </li>
</ul>
&nbsp;&nbsp;&nbsp;&nbsp; <a title="Download!!" href="https://addons.mozilla.org/zh-CN/firefox/addon/1843">Download!!</a><br />
<br />
3、Fiddler<br />
<br />
Fiddle是一个http调试代理，它能够记录所有的你电脑和互联网之间的http通讯，Fiddler 可以也可以让你检查所有的http通讯，设置断点，以及Fiddle 所有的&#8220;进出&#8221;的数据（指cookie,html,js,css等文件，这些都可以让你胡乱修改的意思）。 Fiddler&nbsp; 要比其他的网络调试器要更加简单，因为它仅仅暴露http通讯还有提供一个用户友好的格式。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; <a title="Download!!" href="http://www.fiddlertool.com/Fiddler2/version.asp">Download!!</a> <br />
<br />
4、GhostDoc<br />
<br />
GhostDoc是Visual Studio的一个免费插件，可以协助你生成注释文档的工具。它可以对类型、方法、属性、域等自动生成注释文档（English），根据它的模板生成的注释是一个完整的通顺的注释句子。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; <a title="Download!!" href="http://www.roland-weigelt.de/ghostdoc/">Download!!</a> <br />
<br />
5、<font face="Verdana">The Regulator </font><br />
<br />
<font face="Verdana">The Regulator </font>是一个生成和测试正则表达式的工具，基于.net framework编写的。比起Expresso，它的最大特色是免费、开源！！<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; <a title="Download!!" href="http://sourceforge.net/project/showfiles.php?group_id=105210">Download!!</a> <br />
<br />
6、Reflector<br />
<br />
Reflector是一款强大的反编译工具.使用它你可以方便的查看一些组件的源代码.它的强大之处不仅在此, 它本身还提供了一个添加插件的框架, 使得它的功能可以很容易的得到扩展, 基于此已经有围绕它的插件开发出来.目前就包括将反编译的源代码直接导出文件, 查看源代码的统计信息等等很有用的插件。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; <a title="Download!!" href="http://www.aisto.com/roeder/dotnet/">Download!!</a> <br />
  <img src ="http://www.cnblogs.com/vento/aggbug/1086330.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/42816/" target="_blank">[新闻]传阿里投资淘宝超40亿元 应对百度C2C</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item></channel></rss>