﻿<?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>IT博客-Matthew的Blog</title><link>http://www.cnitblog.com/gffnxk/</link><description /><language>zh-cn</language><lastBuildDate>Wed, 29 Apr 2026 05:59:54 GMT</lastBuildDate><pubDate>Wed, 29 Apr 2026 05:59:54 GMT</pubDate><ttl>60</ttl><item><title>kerry's blog</title><link>http://www.cnitblog.com/gffnxk/archive/2008/04/16/42435.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Wed, 16 Apr 2008 06:43:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2008/04/16/42435.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/42435.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2008/04/16/42435.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/42435.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/42435.html</trackback:ping><description><![CDATA[<a href="http://blog.sina.com.cn/yesdzn">http://blog.sina.com.cn/yesdzn</a>
<img src ="http://www.cnitblog.com/gffnxk/aggbug/42435.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2008-04-16 14:43 <a href="http://www.cnitblog.com/gffnxk/archive/2008/04/16/42435.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>程序中动态创建GUID</title><link>http://www.cnitblog.com/gffnxk/archive/2007/07/18/30173.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Wed, 18 Jul 2007 05:48:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2007/07/18/30173.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/30173.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2007/07/18/30173.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/30173.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/30173.html</trackback:ping><description><![CDATA[uses<br>&nbsp; ComObj, ActiveX;<br><br>var<br>&nbsp; ID: TGUID;<br>&nbsp; S: string;<br>begin<br>&nbsp; if CoCreateGuid (Id) = s_OK then<br>&nbsp; begin<br>&nbsp;&nbsp;&nbsp; s := GUIDToString (Id);<br>&nbsp; end;<br>end;<br>
<img src ="http://www.cnitblog.com/gffnxk/aggbug/30173.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2007-07-18 13:48 <a href="http://www.cnitblog.com/gffnxk/archive/2007/07/18/30173.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>资料收集工具下载</title><link>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14236.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Wed, 26 Jul 2006 07:20:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14236.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/14236.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14236.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/14236.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/14236.html</trackback:ping><description><![CDATA[可用来管理你的代码和文章，可插入图片及OLE对象；内建提醒功能。<br />(压缩包内未提供数据库，第一次使用时将可执行文件解压到一个目录，运行Collector.exe，此时系统会提示创建数据库，按OK就可以了 )<br /><br />下载地址：<a href="/Files/gffnxk/Collector.rar"><br />http://www.cnitblog.com/Files/gffnxk/Collector.rar</a><img src ="http://www.cnitblog.com/gffnxk/aggbug/14236.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-07-26 15:20 <a href="http://www.cnitblog.com/gffnxk/archive/2006/07/26/14236.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Access中的交叉表</title><link>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14234.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Wed, 26 Jul 2006 06:54:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14234.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/14234.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14234.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/14234.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/14234.html</trackback:ping><description><![CDATA[
		<p>TRANSFORM 语句   <br />创建交叉表查询。</p>
		<p>语法<br />TRANSFORM aggfunction<br />selectstatement<br />PIVOT pivotfield [IN (value1[, value2[, ...]])]</p>
		<p>TRANSFORM 语句包含以下部分：</p>
		<p>部分 说明 <br />aggfunction 操作所选数据的 SQL 聚合函数。 <br />selectstatement SELECT 语句。 <br />pivotfield 希望用于创建查询结果集中列标题的字段或表达式。 <br />value1，value2 用于创建列标题的固定值。 </p>
		<p>
				<br />说明<br />使用交叉表查询汇总数据时，将从作为列标题的指定字段或表达式中选择值，以便能够以一种比使用选择查询更紧凑的方式来查看数据。</p>
		<p>TRANSFORM 是可选的，但被包括时则是 SQL 字符串中的第一个语句。它在 SELECT 语句之前以指定作为行标题的字段，在 GROUP BY 子句之前以指定行分组方法。您也可以包含其他子句（如 WHERE），以指定其他选择或排序条件。还可以在交叉表查询中使用子查询作为谓词，特别是在 WHERE 子句中。</p>
		<p>pivotfield 中返回的值作为查询结果集中的列标题。例如，在交叉表查询中如果依据月销售量来透视销售数据，将会创建 12 个列。可以约束 pivotfield 以便从可选 IN 子句中所列出的固定值（value1，value2）内选择标题。也可以包含固定值用于没有数据来创建其他列的情况。</p>
		<p>举例<br />TRANSFORM Sum(Score.score) AS score之总计<br />SELECT Score.Name, Sum(Score.score) AS [总计 score]<br />FROM Score<br />GROUP BY Score.Name<br />PIVOT Score.subject;</p>
<img src ="http://www.cnitblog.com/gffnxk/aggbug/14234.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-07-26 14:54 <a href="http://www.cnitblog.com/gffnxk/archive/2006/07/26/14234.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Access的一些SQL语法</title><link>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14231.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Wed, 26 Jul 2006 06:46:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14231.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/14231.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/07/26/14231.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/14231.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/14231.html</trackback:ping><description><![CDATA[1. 对应SQL Server的 CharIndex 函数<br /><strong>InStr<br /></strong>举例：select instr('asasdfasdf', 'fa')<br />返回值为6.<br />2. 对应SQL Server的SubString函数<br /><strong>MID<br /></strong>举例：SELECT MID('ABCDEFG', 2, 3)<br />返回值为BCD<br />3. 类型转换<br />每个函数都可以强制将一个表达式转换成某种特定数据类型。  <br /> <br />语法  <br /><strong>CBool(expression)  <br /> <br />CByte(expression)  <br /> <br />CCur(expression)  <br /> <br />CDate(expression)  <br /> <br />CDbl(expression)  <br /> <br />CDec(expression)  <br /> <br />CInt(expression)  <br /> <br />CLng(expression)  <br /> <br />CSng(expression)  <br /> <br />CStr(expression)  <br /> <br />CVar(expression)  <br /> <br />CStr(expression)  <br /></strong> <br />必要的  expression  参数可以是任何字符串表达式或数值表达式。  <br /> <br />返回类型  <br />函数名称决定返回类型，如下所示：  <br /> <br />函数  返回类型  expression  参数范围    <br />CBool    Boolean  任何有效的字符串或数值表达式。    <br />CByte    Byte  0  至  255。    <br />CCur  Currency  -922,337,203,685,477.5808  至922,337,203,685,477.5807。    <br />CDate  Date  任何有效的日期表达式。    <br />CDbl  Double    负数从  -1.79769313486231E308  至  -4.94065645841247E-324；正数从  4.94065645841247E-324  至  1.79769313486232E308。    <br />CDec  Decimal  零变比数值，即无小数位数值，为    <br />+/-79,228,162,514,264,337,593,543,950,335。对于  28  位小数的数值，范围则为    <br />+/-7.9228162514264337593543950335；最小的可能非零值是  0.0000000000000000000000000001。    <br />CInt  Integer  -32,768  至  32,767，小数部分四舍五入。    <br />CLng  Long  -2,147,483,648  至  2,147,483,647，小数部分四舍五入。    <br />CSng  Single  负数为  -3.402823E38  至  -1.401298E-45；正数为  1.401298E-45  至  3.402823E38。    <br />CStr  String  依据  expression  参数返回  Cstr。    <br />CVar  Variant  若为数值，则范围与  Double  相同；若不为数值，则范围与  String  相同。   <br /><br />说明  <br />如果传递给函数的  expression  超过转换目标数据类型的范围，将发生错误。  <br /> <br />通常，在编码时可以使用数据类型转换函数，来体现某些操作的结果应该表示为特定的数据类型，而不是缺省的数据类型。例如，当单精度、双精度或整数运算发生的情况下，使用  CCur  来强制执行货币运算。  <br /> <br />应该使用数据类型转换函数来代替  Val，以使国际版的数据转换可以从一种数据类型转换为另一种。例如，当使用  Ccur  时，不同的小数点分隔符、千分位分隔符和各种货币选项，依据系统的区域设置都会被妥善识别。  <br /> <br />当小数部分恰好为  0.5  时，Cint  和  CLng  函数会将它转换为最接近的偶数值。例如，0.5  转换为  0、1.5  转换为  2。Cint  和  CLng  函数不同于  Fix  和  Int  函数，Fix  和  Int  函数会将小数部分截断而不是四舍五入。并且  Fix  和  Int  函数总是返回与传入的数据类型相同的值。  <br /> <br />使用  IsDate  函数，可判断  date  是否可以被转换为日期或时间。Cdate  可用来识别日期文字和时间文字，以及落入可接受的日期范围内的数值。当转换一个数字成为日期时，是将整数部分转换为日期，小数部分转换为从午夜起算的时间。  <br /> <br />CDate  依据系统上的区域设置来决定日期的格式。如果提供的格式为不可识别的日期设置，则不能正确判断年、月、日的顺序。另外，长日期格式，若包含有星期的字符串，也不能被识别。  <br /> <br />CVDate  函数也提供对早期  Visual  Basic  版本的兼容性。CVDate  函数的语法与  CDate  函数是完全相同的，不过，CVDate  是返回一个  Variant，它的子类型是  Date，而不是实际的  Date  类型。因为现在已有真正的  Date  类型，所以  CVDate  也不再需要了。转换一个表达式成为  Date，再赋值给一个  Variant，也可以达到同样的效果。也可以使用这种技巧将其他真正的数据类型转换为对等的  Variant  子类型。  <br /> <br />#############注意  CDec  函数不能返回独立的数据类型，而总是返回一个  Variant，它的值已经被转换为  Decimal  子类型<br /> <img src ="http://www.cnitblog.com/gffnxk/aggbug/14231.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-07-26 14:46 <a href="http://www.cnitblog.com/gffnxk/archive/2006/07/26/14231.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>控制Excel</title><link>http://www.cnitblog.com/gffnxk/archive/2006/07/05/13280.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Wed, 05 Jul 2006 09:28:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/07/05/13280.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/13280.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/07/05/13280.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/13280.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/13280.html</trackback:ping><description><![CDATA[
		<p> </p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">unit ExcelController;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />interface<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />uses<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Dialogs, DB, ADODB, DateUtils, ComObj;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />type<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  TExcelController </span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> class(TComponent)<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  private<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    FxlsApp, FWorkBook: variant;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    HaveCreate: </span>
				<span style="COLOR: #0000ff">boolean</span>
				<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    FCenterHeaderText: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    FCenterFooterText: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    FCaption: TCaption;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> BaseNtoChar(n: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> NumberToCol(n: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetCenterHeaderText(const Value: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetCenterFooterText(const Value: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetCaption(const Value: TCaption);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  public<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    constructor Create(AOwner: TComponent); override;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    destructor Destroy;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure MergeCell(Cell1, Cell2: string) ; overload;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure MergeCell(Row1, Col1, Row2, Col2: integer); overload;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetSheetName(S: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure AddSheet;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure WriteCell(ARow, ACol: integer; AValue: OleVariant);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> GetCellValue(ARow, ACol: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure CopySheet(FromSheetIndex, ToSheetIndex: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure CopyRange(SourceRange: variant; ToCell: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetSheetIndex(I: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure DeleteCol(Col: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure DeleteRow(Row: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> GetCellName(ARow, ACol: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> GetRange(Cell1, Cell2: string): variant; OverLoad;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> GetRange(Row1, Col1, Row2, Col2: integer): variant; OverLoad;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetRangeFontName(ARange: variant; FontName: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetRangeFontSize(ARange: variant; FontSize: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetRangeFontColor(ARange: variant; FontColor: TColor);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetColWidth(ACol: integer; Width: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetBorderStyle(Range: variant; LineStyle: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure SetRangeRowHeight(Range: variant; Height: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    procedure Show;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  published<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #008000">//</span>
				<span style="COLOR: #008000">标题</span>
				<span style="COLOR: #008000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #000000">    property Caption: TCaption read FCaption write SetCaption;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />implementation<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_1967_1986_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1967_1986_Open_Text.style.display='none'; Codehighlighter1_1967_1986_Closed_Image.style.display='inline'; Codehighlighter1_1967_1986_Closed_Text.style.display='inline';" src="http://www.cnitblog.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_1967_1986_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1967_1986_Closed_Text.style.display='none'; Codehighlighter1_1967_1986_Open_Image.style.display='inline'; Codehighlighter1_1967_1986_Open_Text.style.display='inline';" src="http://www.cnitblog.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_1967_1986_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.cnitblog.com/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_1967_1986_Open_Text">
						<span style="COLOR: #000000">{ TExcelController }</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.AddSheet;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Sheets.Add;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> TExcelController.BaseNtoChar(n: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">var</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  </span>
				<span style="COLOR: #0000ff">case</span>
				<span style="COLOR: #000000"> n of<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #000000">1</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'A';</span>
				<span style="COLOR: #000000">2</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'B';</span>
				<span style="COLOR: #000000">3</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'C';</span>
				<span style="COLOR: #000000">4</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'D';</span>
				<span style="COLOR: #000000">5</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'E';</span>
				<span style="COLOR: #000000">6</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'F';</span>
				<span style="COLOR: #000000">7</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'G';<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #000000">8</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'H';</span>
				<span style="COLOR: #000000">9</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'I';</span>
				<span style="COLOR: #000000">10</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'J';</span>
				<span style="COLOR: #000000">11</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'K';</span>
				<span style="COLOR: #000000">12</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'L';</span>
				<span style="COLOR: #000000">13</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'M';</span>
				<span style="COLOR: #000000">14</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'N';<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #000000">15</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'O';</span>
				<span style="COLOR: #000000">16</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'P';</span>
				<span style="COLOR: #000000">17</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'Q';</span>
				<span style="COLOR: #000000">18</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'R';</span>
				<span style="COLOR: #000000">19</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'S';</span>
				<span style="COLOR: #000000">20</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'T';<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #000000">21</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'U';</span>
				<span style="COLOR: #000000">22</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'V';</span>
				<span style="COLOR: #000000">23</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'W';</span>
				<span style="COLOR: #000000">24</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'X';</span>
				<span style="COLOR: #000000">25</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'Y';</span>
				<span style="COLOR: #000000">26</span>
				<span style="COLOR: #000000">:S:</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">'Z';<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> S;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.CopyRange(SourceRange: variant; ToCell: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  SourceRange.Copy;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Range[ToCell].PasteSpecial;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.CopySheet(FromSheetIndex, ToSheetIndex: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Self.SetSheetIndex(FromSheetIndex);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.ActiveSheet.UsedRange.Copy;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Self.SetSheetIndex(ToSheetIndex);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.ActiveSheet.Range['A1'].PasteSpecial;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />constructor TExcelController.Create(AOwner: TComponent);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> CreateOleObject( 'Excel.Application' );<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FWorkBook :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> CreateOleobject('Excel.Sheet');<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FWorkBook :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> FxlsApp.WorkBooks.Add;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  HaveCreate :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> True;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  inherited Create(AOwner);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.DeleteCol(Col: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Columns[Col].Delete;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.DeleteRow(Row: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Rows[Row].Delete;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />destructor TExcelController.Destroy;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  </span>
				<span style="COLOR: #0000ff">if</span>
				<span style="COLOR: #000000"> HaveCreate then<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    FWorkBook.Close;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    FxlsApp.Quit;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> TExcelController.GetCellName(ARow, ACol: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">var</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Self.NumberToCol(ACol);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> S </span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000"> IntToStr(ARow);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> TExcelController.GetCellValue(ARow, ACol: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">if</span>
				<span style="COLOR: #000000"> not HaveCreate then Exit;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> VarToStr(FxlsApp.Cells.Item[ARow, ACol]);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> TExcelController.GetRange(Row1, Col1, Row2, Col2: integer): variant;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">var</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Cell1, Cell2: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Cell1 :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Self.GetCellName(Row1, Col1);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Cell2 :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Self.GetCellName(Row2, Col2);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Self.GetRange(Cell1, Cell2);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> TExcelController.GetRange(Cell1, Cell2: string): variant;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> FxlsApp.Range[Cell1 </span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000"> ':' </span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000"> Cell2];<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.MergeCell(Row1, Col1, Row2, Col2: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">var</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S1, S2: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S1 :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Self.GetCellValue(Row1, Col1);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S2 :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Self.GetCellValue(Row2, Col2);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Self.MergeCell(S1, S2);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.MergeCell(Cell1, Cell2: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">var</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Cell1 </span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000"> ':' </span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000"> Cell2;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Range[S].HorizontalAlignment :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">3</span>
				<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Range[S].merge;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">function</span>
				<span style="COLOR: #000000"> TExcelController.NumberToCol(n: integer): string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">var</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  S: string;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  x: integer;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  </span>
				<span style="COLOR: #0000ff">if</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">&lt;=</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">26</span>
				<span style="COLOR: #000000"> then<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Self.BaseNToChar(n);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Exit;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  </span>
				<span style="COLOR: #0000ff">if</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">&lt;=</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">52</span>
				<span style="COLOR: #000000"> then<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    x :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">-</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">26</span>
				<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> 'A'</span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000">Self.BaseNToChar(x);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Exit;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  </span>
				<span style="COLOR: #0000ff">if</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">&lt;=</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">78</span>
				<span style="COLOR: #000000"> then<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    x :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">-</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">52</span>
				<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> 'B'</span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000">Self.BaseNToChar(x);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Exit;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  </span>
				<span style="COLOR: #0000ff">if</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">&lt;=</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">104</span>
				<span style="COLOR: #000000"> then<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    x :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">-</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">78</span>
				<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> 'C'</span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000">Self.BaseNToChar(x);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Exit;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  </span>
				<span style="COLOR: #0000ff">if</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">&lt;=</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">130</span>
				<span style="COLOR: #000000"> then<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    x :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> n </span>
				<span style="COLOR: #000000">-</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">104</span>
				<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Result :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> 'D' </span>
				<span style="COLOR: #000000">+</span>
				<span style="COLOR: #000000"> Self.BaseNToChar(x);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    Exit;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetBorderStyle(Range: variant; LineStyle: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Range.Borders.LineStyle :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> LineStyle; <br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetCaption(const Value: TCaption);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FCaption :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Value;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Caption :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Value;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetCenterFooterText(const Value: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  <br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetCenterHeaderText(const Value: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetColWidth(ACol, Width: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Columns[ACol].ColumnWidth  :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Width;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetRangeFontColor(ARange: variant;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FontColor: TColor);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  ARange.Font.Color :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> FontColor;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetRangeFontName(ARange: variant; FontName: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  ARange.Font.Name :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> FontName;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetRangeFontSize(ARange: variant; FontSize: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  ARange.Font.Size :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> FontSize;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetRangeRowHeight(Range: variant; Height: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  Range.Rows.RowHeight :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> Height;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetSheetIndex(I: integer);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.WorkSheets[I].Activate;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.SetSheetName(S: string);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.ActiveSheet.Name :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> S;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.Show;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Visible :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> True;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />procedure TExcelController.WriteCell(ARow, ACol: integer; AValue: OleVariant);<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />begin<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />  FxlsApp.Cells(ARow, ACol) :</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> AValue;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end;<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />end.<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
		</div>
<img src ="http://www.cnitblog.com/gffnxk/aggbug/13280.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-07-05 17:28 <a href="http://www.cnitblog.com/gffnxk/archive/2006/07/05/13280.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用SQL语句更改数据库名，表名，列名</title><link>http://www.cnitblog.com/gffnxk/archive/2006/06/06/11659.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Tue, 06 Jun 2006 01:41:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/06/06/11659.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/11659.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/06/06/11659.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/11659.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/11659.html</trackback:ping><description><![CDATA[
		<p>参考SQL Server联机丛书的 sp_renamedb与sp_rename<br /><br />一、更改数据库名<br /></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">sp_renamedb<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />更改数据库的名称。<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />语法<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />sp_renamedb </span>
				<span style="COLOR: #ff0000">[</span>
				<span style="COLOR: #ff0000"> @dbname = </span>
				<span style="COLOR: #ff0000">]</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">old_name</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000"> ,<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #ff0000">[</span>
				<span style="COLOR: #ff0000"> @newname = </span>
				<span style="COLOR: #ff0000">]</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">new_name</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />参数<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #ff0000">[</span>
				<span style="COLOR: #ff0000">@dbname =</span>
				<span style="COLOR: #ff0000">]</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">old_name</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />是数据库的当前名称。old_name 为 sysname 类型，无默认值。<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #ff0000">[</span>
				<span style="COLOR: #ff0000">@newname =</span>
				<span style="COLOR: #ff0000">]</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">new_name</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />是数据库的新名称。new_name 必须遵循标识符规则。new_name 为 sysname 类型，无默认值。<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />返回代码值<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="FONT-WEIGHT: bold; COLOR: #800000">0</span>
				<span style="COLOR: #000000">（成功）或非零数字（失败）<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />权限<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />只有 sysadmin 和 dbcreator 固定服务器角色的成员才能执行 sp_renamedb。<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />示例<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />下例将数据库 accounting 改名为 financial。<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">EXEC</span>
				<span style="COLOR: #000000"> sp_renamedb </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">accounting</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">, </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">financial</span>
				<span style="COLOR: #ff0000">'</span>
		</div>
		<p> </p>
		<p>二、更改表名或列名<br /><br /></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">sp_rename </span>
				<span style="COLOR: #ff0000">[</span>
				<span style="COLOR: #ff0000"> @objname = </span>
				<span style="COLOR: #ff0000">]</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">object_name</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000"> ,<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #ff0000">[</span>
				<span style="COLOR: #ff0000"> @newname = </span>
				<span style="COLOR: #ff0000">]</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">new_name</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #ff0000">[</span>
				<span style="COLOR: #ff0000"> , [ @objtype = </span>
				<span style="COLOR: #ff0000">]</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">object_type</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000"> ]<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #808080">/////////////////////////////////////////////</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />A. 重命名表<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />下例将表 customers 重命名为 custs。<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">EXEC</span>
				<span style="COLOR: #000000"> sp_rename </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">customers</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">, </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">custs</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />B. 重命名列<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />下例将表 customers 中的列 contact title 重命名为 title。<br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">EXEC</span>
				<span style="COLOR: #000000"> sp_rename </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">customers.[contact title]</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">, </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">title</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">, </span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #ff0000">COLUMN</span>
				<span style="COLOR: #ff0000">'</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.cnitblog.com/images/OutliningIndicators/None.gif" align="top" />
				</span>
		</div>
<img src ="http://www.cnitblog.com/gffnxk/aggbug/11659.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-06-06 09:41 <a href="http://www.cnitblog.com/gffnxk/archive/2006/06/06/11659.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我的Delphi多语言处理组件</title><link>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11611.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Mon, 05 Jun 2006 06:33:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11611.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/11611.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11611.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/11611.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/11611.html</trackback:ping><description><![CDATA[
		<p>//将某个近件的名称及Caption存到数据库中的某个表中，当取Caption时从这个表读取就行了<br />ADOConnection属性：指定当前的数据连接<br />TableName属性：就是上述存放Caption的表，如以下数据<br /></p>
		<table style="WIDTH: 472pt; BORDER-COLLAPSE: collapse" cellspacing="0" cellpadding="0" width="629" border="0" x:str="">
				<colgroup>
						<col style="WIDTH: 54pt" span="2" width="72" />
						<col style="WIDTH: 122pt; mso-width-source: userset; mso-width-alt: 5184" width="162" />
						<col style="WIDTH: 81pt; mso-width-source: userset; mso-width-alt: 3456" width="108" />
						<col style="WIDTH: 54pt" width="72" />
						<col style="WIDTH: 107pt; mso-width-source: userset; mso-width-alt: 4576" width="143" />
				</colgroup>
				<tbody>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 54pt; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" width="72" height="19">
										<font face="宋体">ID</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 54pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" width="72">
										<font face="宋体">Frm_Nme</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 122pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" width="162">
										<font face="宋体">Ctrl_Nme</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 81pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" width="108">
										<font face="宋体">Txt_CN</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 54pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" width="72">
										<font face="宋体">Txt_TW</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 107pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" width="143">
										<font face="宋体">Txt_EN</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">1</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmMain</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmMain</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">人力资源管理系统</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">人力資源管理系統</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Human Resource Management System</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">3</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmNewDept</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmNewDept</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">新增/编辑部门资料</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">新增/編輯部門資料</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Add/Edit Department information</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">4</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmNewDept</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Label1</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">部门名称</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">部門名稱</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Department Name</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">5</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmNewDept</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">btnOK</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">确定</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">确定</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">OK</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">6</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmNewDept</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">btnCancel</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">取消</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">取消</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Cancel</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">7</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmDepartment</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmDepartment</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">部门资料管理</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">部門資料管理</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Department Management</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">8</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">frmDepartment</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">tbNewComp</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">新建公司</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">新建公司</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Create Company</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">53</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">DM</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">ads_countryCountry_Nme</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">国籍</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">國籍</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Country</font>
								</td>
						</tr>
						<tr style="HEIGHT: 14.25pt" height="19">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" align="right" height="19" x:num="">
										<font face="宋体">54</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">DM</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">ads_titletitle_Nme</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">职务</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">職務</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Title</font>
								</td>
						</tr>
						<tr style="HEIGHT: 15pt; mso-height-source: userset" height="20">
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 15pt; BACKGROUND-COLOR: transparent" align="right" height="20" x:num="">
										<font face="宋体">55</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">DM</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">ads_levelLevel_Nme</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">级别</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">級別</font>
								</td>
								<td class="xl19" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent">
										<font face="宋体">Level</font>
								</td>
						</tr>
				</tbody>
		</table>
		<br />LanguageField是指当前系统要抓取的语言字段，如果是简体中文，按上表应该就是Txt_CN,如果是繁体中文，则为Txt_TW<br />组件提供两个方法来设置控件的文本属性<br />//设置窗口上控件的文本属性<br />procedure SetControlCaption(theForm: string);<br />//设置DataModule里的每一个字段的显示文本。(我习惯将数据相关的组件放在TDataModule里)<br />procedure SetFieldDispLabel(ADM: TDataModule);<br />//********************调用代码*************************//<br />//窗口的调用<br />procedure TBaseForm.FormCreate(Sender: TObject);<br />begin<br />  DM.MultiLang.SetControlCaption(Self.Name);<br />end;<br />//DataModule的调用<br />procedure TDM.DataModuleCreate(Sender: TObject);<br />begin<br />  MultiLang.LanguageField := GetSysLanguage;<br />  ADOConnection.Connected := True;<br />  MultiLang.SetFieldDispLabel(Self);<br />end;<br />//****************************************************//
<p>//控件源码如下：<br />unit MultiLang;</p><p>interface</p><p>uses<br />  SysUtils, Classes, DB, ADODB, Forms, Dialogs, Controls, Menus, ExtCtrls;</p><p>type<br />  TMultiLang = class(TComponent)<br />  private<br />    FADOConnection: TADOConnection;<br />    FTableName: string;<br />    FLanguageField: string;<br />    FFormName: string;<br />    procedure SetFormName(const Value: string);<br />    procedure SetLanguageField(const Value: string);<br />    procedure SetTableName(const Value: string);<br />    procedure SetADOConnection(const Value: TADOConnection);<br />    { Private declarations }<br />  protected<br />    { Protected declarations }<br />    function GetValue(Command: string): string;<br />  public<br />    { Public declarations }<br />    procedure SetControlCaption(theForm: string);<br />    procedure SetFieldDispLabel(ADM: TDataModule);<br />  published<br />    { Published declarations }<br />    property ADOConnection: TADOConnection read FADOConnection write SetADOConnection;<br />    //property FormName: string read FFormName write SetFormName;<br />    property TableName: string read FTableName write SetTableName;<br />    property LanguageField: string read FLanguageField write SetLanguageField;<br />  end;</p><p>procedure Register;</p><p>implementation</p><p>procedure Register;<br />begin<br />  RegisterComponents('Standard', [TMultiLang]);<br />end;</p><p>{ TComponent1 }</p><p>function TMultiLang.GetValue(Command: string): string;<br />var<br />  tmp: TADOQuery;<br />begin<br />  tmp := TADOQuery.Create(Self);<br />  try<br />    tmp.Connection := Self.ADOConnection;<br />    with tmp do<br />    begin<br />      Close;<br />      SQL.Clear;<br />      SQL.Add(Command);<br />      //ShowMessage(Command);<br />      Open;<br />      Result := Fields[0].AsString;<br />    end;<br />  finally<br />    tmp.Free;<br />  end;<br />end;</p><p>procedure TMultiLang.SetADOConnection(const Value: TADOConnection);<br />begin<br />  FADOConnection := Value;<br />end;</p><p>procedure TMultiLang.SetControlCaption(theForm: string);<br />var<br />  I, J: integer;<br />  AForm: TForm;<br />  Capt, ctrl_nme, S: string;<br />begin<br />  if not Assigned(FADOConnection) then<br />  begin<br />    MessageDlg('Missing ADOConnection property', mtError, [MBOK], 0);<br />    Exit;<br />  end;<br />  if FTableName = '' then<br />  begin<br />    MessageDlg('Missing TableName property', mtError, [MBOK], 0);<br />    Exit;<br />  end;<br />  {if FFormName = '' then<br />  begin<br />    MessageDlg('Missing FormName property', mtError, [MBOK], 0);<br />    Exit;<br />  end; }<br />  if FLanguageField = '' then<br />  begin<br />    MessageDlg('Missing LanguageField property', mtError, [MBOK], 0);<br />    Exit;<br />  end;<br />  //窗口標題<br />  S := GetValue('SELECT ' + FLanguageField + ' FROM '<br />          + FTableName + ' WHERE Frm_Nme=' + QuotedStr(theForm)<br />          +' and Ctrl_Nme=' + QuotedStr(theForm));</p><p>  //<br />  for I := 0 to Screen.FormCount - 1 do<br />  begin<br />    if UpperCase(Screen.Forms[I].Name) = UpperCase(theForm) then<br />    begin<br />      AForm := Screen.Forms[I];<br />      if S &lt;&gt; '' then<br />    //ShowMessage(S);<br />      AForm.Caption := S;<br />      for J := 0 to AForm.ComponentCount - 1 do<br />      begin<br />        Ctrl_Nme := AForm.Components[J].Name;<br />        Capt := GetValue('SELECT ' + FLanguageField + ' FROM '<br />          + FTableName + ' WHERE Frm_Nme=' + QuotedStr(theForm)<br />          +' and Ctrl_Nme=' + QuotedStr(Ctrl_Nme));<br />        //ShowMessage(ctrl_nme+':'+capt);<br />        if Capt &lt;&gt; '' then<br />        begin<br />          if AForm.Components[J] is TMenuItem then<br />            TMenuItem(AForm.Components[J]).Caption := Capt<br />          else<br />          if AForm.Components[J] is TField  then<br />            TField(AForm.Components[J]).DisplayLabel := Capt<br />          else<br />          //if  AForm.Components[J] is TImageList  then<br />            TControl(AForm.Components[J]).SetTextBuf(Pchar(Capt));<br />        end;<br />      end;<br />      Exit;<br />    end;<br />  end;<br />end;</p><p>procedure TMultiLang.SetFieldDispLabel(ADM: TDataModule);<br />var<br />  I: integer;<br />  Nme: string;<br />  Capt: string;<br />begin<br />  for I := 0 to ADM.ComponentCount - 1 do<br />  begin<br />    if ADM.Components[I] is TField then<br />    begin<br />      Nme := TField(ADM.Components[I]).Name;<br />      Capt := GetValue('SELECT ' + FLanguageField + ' FROM '<br />          + FTableName + ' WHERE Frm_Nme=' + QuotedStr(ADM.Name)<br />          +' and Ctrl_Nme=' + QuotedStr(Nme));<br />      if Capt &lt;&gt; '' then<br />        TField(ADM.Components[I]).DisplayLabel := Capt;<br />    end;<br />  end;  <br />end;</p><p>procedure TMultiLang.SetFormName(const Value: string);<br />begin<br />  FFormName := Value;<br />end;</p><p>procedure TMultiLang.SetLanguageField(const Value: string);<br />begin<br />  FLanguageField := Value;<br />end;</p><p>procedure TMultiLang.SetTableName(const Value: string);<br />begin<br />  FTableName := Value;<br />end;</p><p>end.</p><p> </p><img src ="http://www.cnitblog.com/gffnxk/aggbug/11611.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-06-05 14:33 <a href="http://www.cnitblog.com/gffnxk/archive/2006/06/05/11611.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>给窗口上所有的控件设置Caption或Text</title><link>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11609.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Mon, 05 Jun 2006 06:09:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11609.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/11609.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11609.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/11609.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/11609.html</trackback:ping><description><![CDATA[
		<font face="Courier New">var<br />  i:integer;<br />begin<br />  for i:= 0 to self.ComponentCount-1 do<br />    TControl(self.Components[i]).SetTextBuf('Hello, world');<br />end;</font>
<img src ="http://www.cnitblog.com/gffnxk/aggbug/11609.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-06-05 14:09 <a href="http://www.cnitblog.com/gffnxk/archive/2006/06/05/11609.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Delphi中ClientDataSet的使用</title><link>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11608.html</link><dc:creator>matthew</dc:creator><author>matthew</author><pubDate>Mon, 05 Jun 2006 05:48:00 GMT</pubDate><guid>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11608.html</guid><wfw:comment>http://www.cnitblog.com/gffnxk/comments/11608.html</wfw:comment><comments>http://www.cnitblog.com/gffnxk/archive/2006/06/05/11608.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/gffnxk/comments/commentRss/11608.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/gffnxk/services/trackbacks/11608.html</trackback:ping><description><![CDATA[
		<p>当多表join起来的dataset进行处理时，<br />将DatasetProvider的UpdateMode设为upWhereChanged, Options中如果选择poAllowCommanText会有问题（会更新所有记录）；即Options中最好不选</p>
		<p>left join 时UpdateMode设为upWhereKeyOnly，并双击dataset添加所有字段，将key字段的ProviderFlag中的pfInkey设为true<br />但在ClientDataSet中Refresh方法不会更新，要先将Active设为False,再设为True;<br /></p>
<img src ="http://www.cnitblog.com/gffnxk/aggbug/11608.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/gffnxk/" target="_blank">matthew</a> 2006-06-05 13:48 <a href="http://www.cnitblog.com/gffnxk/archive/2006/06/05/11608.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>