<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_hssbsw</title><subtitle type="text"/><id>http://feed.cnblogs.com/blog/u/33114/rss</id><updated>2012-05-31T13:51:32Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/33114/rss"/><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/05/31/2529150.html</id><title type="text">技巧</title><summary type="text">keybd_event模拟键盘输入密码该日志由 傻猫 发表于 2011-01-23 13:25:34function TFrm_main.InputChar(str: string): Boolean;vari : integer;c : byte;begin for i := 1 to Length(str) do begin c := VkKeyScan(str[i]) and 255; //输入文字 keybd_event(c,0,0,0); keybd_event(c,0,KEYEVENTF_KEYUP,0); end;end;Delphi统计字数（汉字+字母+符号）该日志由 傻猫 发</summary><published>2012-05-31T13:50:00Z</published><updated>2012-05-31T13:50:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/05/31/2529150.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/05/31/2529150.html"/><content type="html">&lt;p&gt;keybd_event&lt;span style="font-family: 宋体"&gt;模拟键盘输入密码&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: 宋体"&gt;该日志由&lt;/span&gt; &lt;span style="font-family: 宋体"&gt;傻猫&lt;/span&gt; &lt;span style="font-family: 宋体"&gt;发表于&lt;/span&gt; 2011-01-23 13:25:34&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;function TFrm_main.InputChar(str: string): Boolean;&lt;/p&gt;&lt;p&gt;var&lt;/p&gt;&lt;p&gt;&amp;nbsp;i&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : integer;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;c&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : byte;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;begin&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for i := 1 to Length(str) do&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c := VkKeyScan(str[i]) and 255;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;输入文字&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; keybd_event(c,0,0,0);&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; keybd_event(c,0,KEYEVENTF_KEYUP,0);&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;end;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Delphi&lt;span style="font-family: 宋体"&gt;统计字数（汉字&lt;/span&gt;+&lt;span style="font-family: 宋体"&gt;字母&lt;/span&gt;+&lt;span style="font-family: 宋体"&gt;符号）&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: 宋体"&gt;该日志由&lt;/span&gt; &lt;span style="font-family: 宋体"&gt;傻猫&lt;/span&gt; &lt;span style="font-family: 宋体"&gt;发表于&lt;/span&gt; 2011-01-07 22:03:03&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: 宋体"&gt;根据&lt;/span&gt;asc&lt;span style="font-family: 宋体"&gt;码分别进行统计，看有多少字母和符号，汉字分开统计，一个汉字算计数&lt;/span&gt;1&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;function TFrm_main.MsgCounter(str: string): string;&lt;/p&gt;&lt;p&gt;var&lt;/p&gt;&lt;p&gt;&amp;nbsp;s:string;&amp;nbsp;&amp;nbsp;//&lt;span style="font-family: 宋体"&gt;保存字符串&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;i,e,c:integer;//&lt;span style="font-family: 宋体"&gt;保存变量&lt;/span&gt;&lt;/p&gt;&lt;p&gt;begin&lt;/p&gt;&lt;p&gt;&amp;nbsp;s:=str;&lt;/p&gt;&lt;p&gt;&amp;nbsp;e:=0;c:=0;&lt;/p&gt;&lt;p&gt;&amp;nbsp;for i:=1 to length(s) do&lt;/p&gt;&lt;p&gt;&amp;nbsp;begin&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ord(s[i])&amp;gt;=33)and(ord(s[i])&amp;lt;=126) then&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;判断字符的顺序号&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inc(e);&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ord(s[i])&amp;gt;=127) then&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;判断字符的顺序号&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inc(c);&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;end;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;Result:=IntToStr(e+(c div 2));&lt;/p&gt;&lt;p&gt;end;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: 宋体"&gt;文章来源于《傻猫网络日志》&lt;/span&gt; &lt;a href="http://www.samool.com/category/Delphi/2/"&gt;http://www.samool.com/category/Delphi/2/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p align="left"&gt;&lt;span style="line-height: 150%; font-family: Verdana; color: #333333; font-size: 9pt"&gt;//&lt;/span&gt;&lt;span style="line-height: 150%; font-family: 宋体; color: #333333; font-size: 9pt"&gt;模拟&lt;/span&gt;&lt;span style="line-height: 150%; font-family: Verdana; color: #333333; font-size: 9pt"&gt;ctrl+&lt;/span&gt;&lt;span style="line-height: 150%; font-family: 宋体; color: #333333; font-size: 9pt"&gt;回车&lt;/span&gt;&lt;span style="line-height: 150%; font-family: Verdana; color: #333333; font-size: 9pt"&gt;&lt;br /&gt;keybd_event(VK_CONTROL,&amp;nbsp;&amp;nbsp; 0,&amp;nbsp;&amp;nbsp; 0,&amp;nbsp;&amp;nbsp; 0);&lt;br /&gt;keybd_event(VK_RETURN,&amp;nbsp;&amp;nbsp; 0,&amp;nbsp;&amp;nbsp; 0,&amp;nbsp;&amp;nbsp; 0);&lt;br /&gt;keybd_event(VK_RETURN,&amp;nbsp;&amp;nbsp; 0,&amp;nbsp;&amp;nbsp; KEYEVENTF_KEYUP,&amp;nbsp;&amp;nbsp; 0);&lt;br /&gt;keybd_event(VK_CONTROL,&amp;nbsp;&amp;nbsp; 0,&amp;nbsp;&amp;nbsp; KEYEVENTF_KEYUP,&amp;nbsp;&amp;nbsp; 0);&lt;/span&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;span style="line-height: 150%; font-family: Verdana; color: #333333; font-size: 9pt"&gt;{ Virtual Keys, Standard Set }&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_LBUTTON}&lt;br /&gt;&amp;nbsp; VK_LBUTTON = 1;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_RBUTTON}&lt;br /&gt;&amp;nbsp; VK_RBUTTON = 2;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_CANCEL}&lt;br /&gt;&amp;nbsp; VK_CANCEL = 3;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_MBUTTON}&lt;br /&gt;&amp;nbsp; VK_MBUTTON = 4;&amp;nbsp; { NOT contiguous with L &amp;amp; RBUTTON }&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_BACK}&lt;br /&gt;&amp;nbsp; VK_BACK = 8;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_TAB}&lt;br /&gt;&amp;nbsp; VK_TAB = 9;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_CLEAR}&lt;br /&gt;&amp;nbsp; VK_CLEAR = 12;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_RETURN}&lt;br /&gt;&amp;nbsp; VK_RETURN = 13;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_SHIFT}&lt;br /&gt;&amp;nbsp; VK_SHIFT = $10;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_CONTROL}&lt;br /&gt;&amp;nbsp; VK_CONTROL = 17;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_MENU}&lt;br /&gt;&amp;nbsp; VK_MENU = 18;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_PAUSE}&lt;br /&gt;&amp;nbsp; VK_PAUSE = 19;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_CAPITAL}&lt;br /&gt;&amp;nbsp; VK_CAPITAL = 20;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_KANA }&lt;br /&gt;&amp;nbsp; VK_KANA = 21;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_HANGUL }&lt;br /&gt;&amp;nbsp; VK_HANGUL = 21;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_JUNJA }&lt;br /&gt;&amp;nbsp; VK_JUNJA = 23;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_FINAL }&lt;br /&gt;&amp;nbsp; VK_FINAL = 24;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_HANJA }&lt;br /&gt;&amp;nbsp; VK_HANJA = 25;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_KANJI }&lt;br /&gt;&amp;nbsp; VK_KANJI = 25;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_CONVERT }&lt;br /&gt;&amp;nbsp; VK_CONVERT = 28;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NONCONVERT }&lt;br /&gt;&amp;nbsp; VK_NONCONVERT = 29;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_ACCEPT }&lt;br /&gt;&amp;nbsp; VK_ACCEPT = 30;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_MODECHANGE }&lt;br /&gt;&amp;nbsp; VK_MODECHANGE = 31;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_ESCAPE}&lt;br /&gt;&amp;nbsp; VK_ESCAPE = 27;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_SPACE}&lt;br /&gt;&amp;nbsp; VK_SPACE = $20;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_PRIOR}&lt;br /&gt;&amp;nbsp; VK_PRIOR = 33;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NEXT}&lt;br /&gt;&amp;nbsp; VK_NEXT = 34;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_END}&lt;br /&gt;&amp;nbsp; VK_END = 35;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_HOME}&lt;br /&gt;&amp;nbsp; VK_HOME = 36;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_LEFT}&lt;br /&gt;&amp;nbsp; VK_LEFT = 37;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_UP}&lt;br /&gt;&amp;nbsp; VK_UP = 38;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_RIGHT}&lt;br /&gt;&amp;nbsp; VK_RIGHT = 39;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_DOWN}&lt;br /&gt;&amp;nbsp; VK_DOWN = 40;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_SELECT}&lt;br /&gt;&amp;nbsp; VK_SELECT = 41;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_PRINT}&lt;br /&gt;&amp;nbsp; VK_PRINT = 42;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_EXECUTE}&lt;br /&gt;&amp;nbsp; VK_EXECUTE = 43;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_SNAPSHOT}&lt;br /&gt;&amp;nbsp; VK_SNAPSHOT = 44;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_INSERT}&lt;br /&gt;&amp;nbsp; VK_INSERT = 45;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_DELETE}&lt;br /&gt;&amp;nbsp; VK_DELETE = 46;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_HELP}&lt;br /&gt;&amp;nbsp; VK_HELP = 47;&lt;br /&gt;{ VK_0 thru VK_9 are the same as ASCII '0' thru '9' ($30 - $39) }&lt;br /&gt;{ VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' ($41 - $5A) }&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_LWIN}&lt;br /&gt;&amp;nbsp; VK_LWIN = 91;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_RWIN}&lt;br /&gt;&amp;nbsp; VK_RWIN = 92;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_APPS}&lt;br /&gt;&amp;nbsp; VK_APPS = 93;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD0}&lt;br /&gt;&amp;nbsp; VK_NUMPAD0 = 96;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD1}&lt;br /&gt;&amp;nbsp; VK_NUMPAD1 = 97;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD2}&lt;br /&gt;&amp;nbsp; VK_NUMPAD2 = 98;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD3}&lt;br /&gt;&amp;nbsp; VK_NUMPAD3 = 99;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD4}&lt;br /&gt;&amp;nbsp; VK_NUMPAD4 = 100;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD5}&lt;br /&gt;&amp;nbsp; VK_NUMPAD5 = 101;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD6}&lt;br /&gt;&amp;nbsp; VK_NUMPAD6 = 102;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD7}&lt;br /&gt;&amp;nbsp; VK_NUMPAD7 = 103;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD8}&lt;br /&gt;&amp;nbsp; VK_NUMPAD8 = 104;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMPAD9}&lt;br /&gt;&amp;nbsp; VK_NUMPAD9 = 105;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_MULTIPLY}&lt;br /&gt;&amp;nbsp; VK_MULTIPLY = 106;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_ADD}&lt;br /&gt;&amp;nbsp; VK_ADD = 107;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_SEPARATOR}&lt;br /&gt;&amp;nbsp; VK_SEPARATOR = 108;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_SUBTRACT}&lt;br /&gt;&amp;nbsp; VK_SUBTRACT = 109;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_DECIMAL}&lt;br /&gt;&amp;nbsp; VK_DECIMAL = 110;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_DIVIDE}&lt;br /&gt;&amp;nbsp; VK_DIVIDE = 111;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F1}&lt;br /&gt;&amp;nbsp; VK_F1 = 112;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F2}&lt;br /&gt;&amp;nbsp; VK_F2 = 113;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F3}&lt;br /&gt;&amp;nbsp; VK_F3 = 114;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F4}&lt;br /&gt;&amp;nbsp; VK_F4 = 115;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F5}&lt;br /&gt;&amp;nbsp; VK_F5 = 116;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F6}&lt;br /&gt;&amp;nbsp; VK_F6 = 117;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F7}&lt;br /&gt;&amp;nbsp; VK_F7 = 118;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F8}&lt;br /&gt;&amp;nbsp; VK_F8 = 119;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F9}&lt;br /&gt;&amp;nbsp; VK_F9 = 120;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F10}&lt;br /&gt;&amp;nbsp; VK_F10 = 121;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F11}&lt;br /&gt;&amp;nbsp; VK_F11 = 122;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F12}&lt;br /&gt;&amp;nbsp; VK_F12 = 123;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F13}&lt;br /&gt;&amp;nbsp; VK_F13 = 124;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F14}&lt;br /&gt;&amp;nbsp; VK_F14 = 125;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F15}&lt;br /&gt;&amp;nbsp; VK_F15 = 126;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F16}&lt;br /&gt;&amp;nbsp; VK_F16 = 127;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F17}&lt;br /&gt;&amp;nbsp; VK_F17 = 128;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F18}&lt;br /&gt;&amp;nbsp; VK_F18 = 129;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F19}&lt;br /&gt;&amp;nbsp; VK_F19 = 130;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F20}&lt;br /&gt;&amp;nbsp; VK_F20 = 131;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F21}&lt;br /&gt;&amp;nbsp; VK_F21 = 132;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F22}&lt;br /&gt;&amp;nbsp; VK_F22 = 133;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F23}&lt;br /&gt;&amp;nbsp; VK_F23 = 134;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_F24}&lt;br /&gt;&amp;nbsp; VK_F24 = 135;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NUMLOCK}&lt;br /&gt;&amp;nbsp; VK_NUMLOCK = 144;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_SCROLL}&lt;br /&gt;&amp;nbsp; VK_SCROLL = 145;&lt;br /&gt;{ VK_L &amp;amp; VK_R - left and right Alt, Ctrl and Shift virtual keys.&lt;br /&gt;&amp;nbsp; Used only as parameters to GetAsyncKeyState() and GetKeyState().&lt;br /&gt;&amp;nbsp; No other API or message will distinguish left and right keys in this way. }&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_LSHIFT}&lt;br /&gt;&amp;nbsp; VK_LSHIFT = 160;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_RSHIFT}&lt;br /&gt;&amp;nbsp; VK_RSHIFT = 161;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_LCONTROL}&lt;br /&gt;&amp;nbsp; VK_LCONTROL = 162;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_RCONTROL}&lt;br /&gt;&amp;nbsp; VK_RCONTROL = 163;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_LMENU}&lt;br /&gt;&amp;nbsp; VK_LMENU = 164;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_RMENU}&lt;br /&gt;&amp;nbsp; VK_RMENU = 165;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_PROCESSKEY}&lt;br /&gt;&amp;nbsp; VK_PROCESSKEY = 229;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_ATTN}&lt;br /&gt;&amp;nbsp; VK_ATTN = 246;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_CRSEL}&lt;br /&gt;&amp;nbsp; VK_CRSEL = 247;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_EXSEL}&lt;br /&gt;&amp;nbsp; VK_EXSEL = 248;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_EREOF}&lt;br /&gt;&amp;nbsp; VK_EREOF = 249;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_PLAY}&lt;br /&gt;&amp;nbsp; VK_PLAY = 250;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_ZOOM}&lt;br /&gt;&amp;nbsp; VK_ZOOM = 251;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_NONAME}&lt;br /&gt;&amp;nbsp; VK_NONAME = 252;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_PA1}&lt;br /&gt;&amp;nbsp; VK_PA1 = 253;&lt;br /&gt;&amp;nbsp; {$EXTERNALSYM VK_OEM_CLEAR}&lt;br /&gt;&amp;nbsp; VK_OEM_CLEAR = 254;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2529150.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/05/31/2529150.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/15/2397825.html</id><title type="text">把EXE可执行文件等作为资源包含在Delphi编译文件中</title><summary type="text">摘自我自己过去写的一段心得。1.编辑资源文件 *.RCWave： 资源文件是声音文件；RCDATA： 二进制数据AVI： AVI动画；ICON： 图标文件；BITMAP： 位图文件；CURSOR： 光标文件；比如:MyWav WAVE "FileName.Wav"2.使用Brcc32转化为*.RES文件3.在工程中引用RES文件比如:{$R MyRes.RES}4.运行时读入 通过TResourceStream ,比如TResourceStream.Create(HInstance, ResName, RT_RCDATA); API:LoadBitmap,LoadIcon等</summary><published>2012-03-15T04:48:00Z</published><updated>2012-03-15T04:48:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/15/2397825.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/15/2397825.html"/><content type="html">&lt;p&gt;摘自我自己过去写的一段心得。&lt;/p&gt;&lt;p&gt;1.编辑资源文件 *.RC&lt;br /&gt;Wave： 资源文件是声音文件；&lt;br /&gt;RCDATA： 二进制数据&lt;br /&gt;AVI： AVI动画；&lt;br /&gt;ICON： 图标文件；&lt;br /&gt;BITMAP： 位图文件；&lt;br /&gt;CURSOR： 光标文件；&lt;br /&gt;比如:&lt;br /&gt;MyWav WAVE "FileName.Wav"&lt;/p&gt;&lt;p&gt;2.使用Brcc32转化为*.RES文件&lt;/p&gt;&lt;p&gt;3.在工程中引用RES文件&lt;br /&gt;比如:{$R MyRes.RES}&lt;/p&gt;&lt;p&gt;4.运行时读入&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 通过TResourceStream ,比如TResourceStream.Create(HInstance, ResName, RT_RCDATA);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; API:LoadBitmap,LoadIcon等&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 组件:Image1.Picture.Bitmap.LoadFromResourceName&lt;br /&gt;/////////////////////////////////////////////////////////&lt;br /&gt;把EXE可执行文件等作为资源包含在Delphi编译文件中2010/01/18 8:29 P.M.感觉还是挺有用的，转载保存了~~~&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;p&gt;建立文本文件&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TEST.RC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 撰写下面的一行&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AEXE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXEFILE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c:\test.exe&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 存盘&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; copy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; test.rc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 到你DELPHI目录里的&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bin&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 目录&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 执行&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; brcc32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; test.rc&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 得到&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; test.res&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; copy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; test.res&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 到你的工程目录&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 记得在工程文件里加上&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {$R&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; test.res}&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 提取RES中的TEST.EXE的函数&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; procedure&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; extractexeres(restype,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resname,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resnewname:string);&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res:tresourcestream;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res:=tresourcestream.create(hinstance,resname,pchar(resyype));&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res.savetofile(resnewname);&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res.free;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;p&gt;建立文本文件&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myjpg.RC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 撰写下面的一行&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Hash&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JPGFILE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c:\myjpg.jpg&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 存盘&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; copy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myjpg.rc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 到你DELPHI目录里的&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bin&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 目录&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 执行&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; brcc32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myjpg.rc&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 得到&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myjpg.res&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; copy&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myjpg.res&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 到你的工程目录&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 记得在工程文件里加上&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {$R&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; myjpg.res}&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 提取RES中的MYJPG.jpg的函数&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; procedure&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; extractexeres(resname,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; restype,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resnewname:string);&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res:Tresourcestream;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res:=Tresourcestream.create(hinstance,resname,pchar(restype));&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res.savetofile(resnewname);&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; res.free;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //这样你就可以调用resnewname这个&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg文件了。&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 调用的时候如下：&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Extractexeres('Hash','JPGFILE','f:\myjpg.jpg');&lt;/p&gt;&lt;p&gt;换一种说法：&lt;/p&gt;&lt;p&gt;1、生成一个rc文件，文件格式如下：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rwww exefile "test.exe"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //rwww是资源名称&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //exefile是资源类型&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //text.exe是资源&lt;br /&gt;&amp;nbsp;&amp;nbsp; 资源类型列表：&lt;br /&gt;&amp;nbsp;&amp;nbsp; Wave：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 资源文件是声音文件；&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; RCDATA：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 一般二进制文件；&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; AVI：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AVI动画；&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; ICON：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 图标文件；&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; BITMAP：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 位图文件；&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; CURSOR：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 光标文件； &lt;br /&gt;&amp;nbsp;&amp;nbsp; exefile:&amp;nbsp;&amp;nbsp; exe文件&lt;br /&gt;&amp;nbsp;&amp;nbsp; FILE:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 一般文件&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;p&gt;&lt;br /&gt;2、将delphi安装目录下bin中的brcc32.exe文件拷出，用brcc32.exe执行&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 生成的rc文件，在dos窗口下 运行：brcc32 test.rc&amp;nbsp;&amp;nbsp; 生成正式的&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 后缀为.res的次源文件&lt;/p&gt;&lt;p&gt;3、在delphi中加入编译指令{$R test.res}用以编译。但注意，以上的test.exe文件&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 一定要在当前路径下存在。&lt;/p&gt;&lt;p&gt;4、调用：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t : TResourceStream;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t := TResourceStream.Create(HInstance,'rwww','exefile'); //其中HInstance为一个句柄常量；rwww为资源名；exefile为资源类型&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t.SaveToFile('c:\2.exe'); //保存文件成2.exe&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; finally&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t.free;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;br /&gt;///////////////////////////////////////////////////////////&lt;br /&gt;编辑一个 resource.rc 文件 ,里面类似如下 :&lt;/p&gt;&lt;p&gt;&amp;nbsp; hookdll RC_Dll YourHookDllFileName.Dll&lt;/p&gt;&lt;p&gt;2: 然后用 Brcc32.exe 编译 :&lt;/p&gt;&lt;p&gt;&amp;nbsp; brcc32 resource.rc&lt;/p&gt;&lt;p&gt;&amp;nbsp; 结果生成 resource.res 文件 &lt;/p&gt;&lt;p&gt;3: 修改窗体 Pas 或者 Dpr 文件 ,添加下面的代码 :&lt;/p&gt;&lt;p&gt;&amp;nbsp; {$R *.res}&lt;/p&gt;&lt;p&gt;&amp;nbsp; {$R resource.res}&lt;/p&gt;&lt;p&gt;4: 关键的代码 :&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 在窗体初始化或者工程的开头部分添加代码 :&lt;/p&gt;&lt;p&gt;&amp;nbsp; var&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; res:tresourcestream;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; ....&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; res:=tresourcestream.create(instance,'hookdll','RC_Dll');&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; res.SaveToFile('YourHookDllFileName.Dll');&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; res.Free;&lt;/p&gt;&lt;p&gt;5: 你的程序退出的时候 :&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; DeleteFile('YourHookDllFile.Dll');&lt;/p&gt;&lt;p&gt;6:End&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2397825.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/15/2397825.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/13/2394410.html</id><title type="text">Delphi压缩图片代码</title><summary type="text">网上的都少了这两句bmp:=TBitmap.create; //先建立后才能用 jpg:= TJpegImage.create; ///////////////////////////////////////////////unit Unit1;interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,jpeg;type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender.</summary><published>2012-03-13T12:44:00Z</published><updated>2012-03-13T12:44:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/13/2394410.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/13/2394410.html"/><content type="html"> &lt;p&gt;网上的都少了这两句&lt;/p&gt;&lt;p&gt;bmp:=TBitmap.create;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //先建立后才能用&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg:= TJpegImage.create; &lt;/p&gt;&lt;p&gt;///////////////////////////////////////////////&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;unit Unit1;&lt;/p&gt;&lt;p&gt;interface&lt;/p&gt;&lt;p&gt;uses&lt;br /&gt;&amp;nbsp; Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,&lt;br /&gt;&amp;nbsp; StdCtrls,jpeg;&lt;/p&gt;&lt;p&gt;type&lt;br /&gt;&amp;nbsp; TForm1 = class(TForm)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Button1: TButton;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; procedure Button1Click(Sender: TObject);&lt;br /&gt;&amp;nbsp; private&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { Private declarations }&lt;br /&gt;&amp;nbsp; public&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { Public declarations }&lt;br /&gt;&amp;nbsp; end;&lt;/p&gt;&lt;p&gt;var&lt;br /&gt;&amp;nbsp; Form1: TForm1;&lt;/p&gt;&lt;p&gt;implementation&lt;/p&gt;&lt;p&gt;{$R *.DFM}&lt;br /&gt;&amp;nbsp; //uses JPEG;&lt;/p&gt;&lt;p&gt;//=====================图片处理函数，将覆盖原图片文件===========================&lt;br /&gt;//=====filename:图片完整路径&amp;nbsp; PressQuality:压缩质量 Width:宽&amp;nbsp; Height:高&lt;br /&gt;function CompressMainFun(filename: String; PressQuality,Width,Height:integer): Boolean;&lt;br /&gt;var&lt;br /&gt;&amp;nbsp; bmp: TBitmap;&lt;br /&gt;&amp;nbsp; jpg: TJpegImage;&lt;br /&gt;&amp;nbsp; i: Integer;&lt;br /&gt;&amp;nbsp; sTemp:string;&lt;br /&gt;begin&lt;br /&gt;&amp;nbsp; Result := False;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp:=TBitmap.create;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //先建立后才能用&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg:= TJpegImage.create;&amp;nbsp;&amp;nbsp; //先建立后才能用&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if pos(UpperCase('.bmp'), UpperCase(filename)) &amp;lt;&amp;gt; 0 then&amp;nbsp;&amp;nbsp; //bmp格式&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp.LoadFromFile(filename);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.Assign(bmp);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.CompressionQuality := PressQuality;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.Compress;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp.height := Height;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp.Width := Width;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp.Canvas.StretchDraw(bmp.Canvas.ClipRect, jpg);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.Assign(bmp);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp := filename + '.jpg';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.SaveToFile(sTemp);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // DeleteFile(filename);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 这三句如使用可达到覆盖原文件的效果&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //CopyFile(PChar(sTemp), PChar(filename), True);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // DeleteFile(sTemp);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //其它格式&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.LoadFromFile(filename);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp.height := Height;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp.Width := Width;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bmp.Canvas.StretchDraw(bmp.Canvas.ClipRect, jpg);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.Assign(bmp);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.CompressionQuality := PressQuality;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.Compress;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp := filename + '.jpg';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jpg.SaveToFile(sTemp);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // DeleteFile(filename);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 这三句如使用可达到覆盖原文件的效果&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // CopyFile(PChar(sTemp), PChar(filename), True);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // DeleteFile(sTemp);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;br /&gt;&amp;nbsp; Result := True;&lt;br /&gt;end;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;procedure TForm1.Button1Click(Sender: TObject);&lt;br /&gt;begin&lt;br /&gt;CompressMainFun('e:\1.jpg',75,640,480);&lt;br /&gt;end;&lt;/p&gt;&lt;p&gt;end.&lt;/p&gt; &lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2394410.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/13/2394410.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389228.html</id><title type="text">TStringList 常用操作</title><summary type="text">//TStringList 常用方法与属性:varList: TStringList;i: Integer;beginList := TStringList.Create;List.Add('Strings1'); {添加}List.Add('Strings2');List.Exchange(0,1); {置换}List.Insert(0,'Strings3'); {插入}i := List.IndexOf('Strings1'); {第一次出现的位置}List.Sort; {排序}List.Sorted := True; {指定</summary><published>2012-03-10T08:09:00Z</published><updated>2012-03-10T08:09:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389228.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389228.html"/><content type="html">&lt;div class="cnt" id="blog_text"&gt;&lt;font color="#008000"&gt;//TStringList 常用方法与属性:&lt;br /&gt;&lt;/font&gt;&lt;strong&gt;&lt;font color="#000080"&gt;var&lt;/font&gt;&lt;br /&gt;List: TStringList;&lt;br /&gt;i: Integer;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List := TStringList.Create;&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'Strings1'&lt;/font&gt;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{添加}&lt;/font&gt;&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'Strings2'&lt;/font&gt;);&lt;br /&gt;List.Exchange(&lt;font color="#0000ff"&gt;0&lt;/font&gt;,&lt;font color="#0000ff"&gt;1&lt;/font&gt;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{置换}&lt;/font&gt;&lt;br /&gt;List.Insert(&lt;font color="#0000ff"&gt;0&lt;/font&gt;,&lt;font color="#0000ff"&gt;'Strings3'&lt;/font&gt;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{插入}&lt;/font&gt;&lt;br /&gt;i := List.IndexOf(&lt;font color="#0000ff"&gt;'Strings1'&lt;/font&gt;); &lt;font color="#008000"&gt;{第一次出现的位置}&lt;/font&gt;&lt;br /&gt;List.Sort;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{排序}&lt;/font&gt;&lt;br /&gt;List.Sorted := True; &lt;font color="#008000"&gt;{指定排序}&lt;/font&gt;&lt;br /&gt;List.Count;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{总数}&lt;/font&gt;&lt;br /&gt;List.Text;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{文本集合}&lt;/font&gt;&lt;br /&gt;List.Delete(&lt;font color="#0000ff"&gt;0&lt;/font&gt;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{删除, 0是第一个数据}&lt;/font&gt;&lt;br /&gt;List.LoadFromFile(&lt;font color="#0000ff"&gt;'c:\tmp.txt'&lt;/font&gt;);&lt;font color="#008000"&gt;{打开}&lt;/font&gt;&lt;br /&gt;List.SaveToFile(&lt;font color="#0000ff"&gt;'c:\tmp.txt'&lt;/font&gt;); &lt;font color="#008000"&gt;{保存}&lt;/font&gt;&lt;br /&gt;List.Clear;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{清空}&lt;/font&gt;&lt;br /&gt;List.Free;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#008000"&gt;{释放}&lt;/font&gt;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//读入字符串&lt;br /&gt;&lt;/font&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List: TStringList;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List := TStringList.Create;&lt;br /&gt;List.CommaText := &lt;font color="#0000ff"&gt;'aaa,bbb,ccc,ddd'&lt;/font&gt;;&lt;br /&gt;&lt;font color="#008000"&gt;//相当于: List.Text := 'aaa' + #13#10 + 'bbb' + #13#10' + 'ccc' + '#13#10' + 'ddd';&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;ShowMessage(IntToStr(List.Count)); &lt;font color="#008000"&gt;//4&lt;br /&gt;&lt;/font&gt;ShowMessage(List[&lt;font color="#0000ff"&gt;0&lt;/font&gt;]); &lt;font color="#008000"&gt;//aaa&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;List.Free;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//置换分隔符&lt;br /&gt;&lt;/font&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List: TStringList;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List := TStringList.Create;&lt;br /&gt;List.Delimiter := &lt;font color="#0000ff"&gt;'|'&lt;/font&gt;;&lt;br /&gt;List.DelimitedText := &lt;font color="#0000ff"&gt;'aaa|bbb|ccc|ddd'&lt;/font&gt;;&lt;br /&gt;&lt;br /&gt;ShowMessage(IntToStr(List.Count)); &lt;font color="#008000"&gt;//4&lt;br /&gt;&lt;/font&gt;ShowMessage(List[&lt;font color="#0000ff"&gt;0&lt;/font&gt;]); &lt;font color="#008000"&gt;//aaa&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;List.Free;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//类似的哈希表操作法&lt;br /&gt;&lt;/font&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List: TStringList;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List := TStringList.Create;&lt;br /&gt;&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'aaa=111'&lt;/font&gt;);&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'bbb=222'&lt;/font&gt;);&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'ccc=333'&lt;/font&gt;);&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'ddd=444'&lt;/font&gt;);&lt;br /&gt;&lt;br /&gt;ShowMessage(List.Names[&lt;font color="#0000ff"&gt;1&lt;/font&gt;]); &lt;font color="#008000"&gt;//bbb&lt;br /&gt;&lt;/font&gt;ShowMessage(List.ValueFromIndex[&lt;font color="#0000ff"&gt;1&lt;/font&gt;]); &lt;font color="#008000"&gt;//222&lt;br /&gt;&lt;/font&gt;ShowMessage(List.Values[&lt;font color="#0000ff"&gt;'bbb'&lt;/font&gt;]); &lt;font color="#008000"&gt;//222&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//ValueFromIndex 可以赋值:&lt;br /&gt;&lt;/font&gt;List.ValueFromIndex[&lt;font color="#0000ff"&gt;1&lt;/font&gt;] := &lt;font color="#0000ff"&gt;'2'&lt;/font&gt;;&lt;br /&gt;ShowMessage(List[&lt;font color="#0000ff"&gt;1&lt;/font&gt;]); &lt;font color="#008000"&gt;//bbb=2&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//可以通过 Values 赋值:&lt;br /&gt;&lt;/font&gt;List.Values[&lt;font color="#0000ff"&gt;'bbb'&lt;/font&gt;] := &lt;font color="#0000ff"&gt;'22'&lt;/font&gt;;&lt;br /&gt;ShowMessage(List[&lt;font color="#0000ff"&gt;1&lt;/font&gt;]); &lt;font color="#008000"&gt;//bbb=22&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;List.Free;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//避免重复值&lt;br /&gt;&lt;/font&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List: TStringList;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List := TStringList.Create;&lt;br /&gt;&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'aaa'&lt;/font&gt;);&lt;br /&gt;&lt;br /&gt;List.Sorted := True; &lt;font color="#008000"&gt;//需要先指定排序&lt;br /&gt;&lt;/font&gt;List.Duplicates := dupIgnore; &lt;font color="#008000"&gt;//如有重复值则放弃&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'aaa'&lt;/font&gt;);&lt;br /&gt;&lt;br /&gt;ShowMessage(List.Text); &lt;font color="#008000"&gt;//aaa&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//Duplicates 有3个可选值:&lt;br /&gt;&lt;/font&gt;&lt;font color="#008000"&gt;//dupIgnore: 放弃;&lt;br /&gt;&lt;/font&gt;&lt;font color="#008000"&gt;//dupAccept: 结束;&lt;br /&gt;&lt;/font&gt;&lt;font color="#008000"&gt;//dupError: 提示错误.&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;List.Free;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//排序与倒排序&lt;br /&gt;&lt;/font&gt;&lt;font color="#008000"&gt;{排序函数}&lt;/font&gt;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; DescCompareStrings(List: TStringList; Index1, Index2: Integer): Integer;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;Result := -AnsiCompareText(List[Index1], List[Index2]);&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br /&gt;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; TForm1.Button1Click(Sender: TObject);&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List: TStringList;&lt;br /&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br /&gt;List := TStringList.Create;&lt;br /&gt;&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'bbb'&lt;/font&gt;);&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'ccc'&lt;/font&gt;);&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'aaa'&lt;/font&gt;);&lt;br /&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//未排序&lt;br /&gt;&lt;/font&gt;ShowMessage(List.Text); &lt;font color="#008000"&gt;//bbb ccc aaa&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//排序&lt;br /&gt;&lt;/font&gt;List.Sort;&lt;br /&gt;ShowMessage(List.Text); &lt;font color="#008000"&gt;//aaa bbb ccc&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//倒排序&lt;br /&gt;&lt;/font&gt;List.CustomSort(DescCompareStrings); &lt;font color="#008000"&gt;//调用排序函数&lt;br /&gt;&lt;/font&gt;ShowMessage(List.Text); &lt;font color="#008000"&gt;//ccc bbb aaa&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008000"&gt;//假如:&lt;br /&gt;&lt;/font&gt;List.Sorted := True;&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'999'&lt;/font&gt;);&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'000'&lt;/font&gt;);&lt;br /&gt;List.Add(&lt;font color="#0000ff"&gt;'zzz'&lt;/font&gt;);&lt;br /&gt;ShowMessage(List.Text); &lt;font color="#008000"&gt;//000 999 aaa bbb ccc zzz&lt;br /&gt;&lt;/font&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br /&gt;&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2389228.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389228.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389214.html</id><title type="text">Delphi中的jpg、png、gif 图片及 gif 动画的显示</title><summary type="text">unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, ExtCtrls;typeTForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; procedure Button1Click(Sender: TObject); procedure Button2...</summary><published>2012-03-10T08:03:00Z</published><updated>2012-03-10T08:03:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389214.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389214.html"/><content type="html">&lt;pre&gt;&lt;font color="#000080"&gt;&lt;strong&gt;unit&lt;/strong&gt;&lt;/font&gt; Unit1;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;interface&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;uses&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,&lt;br/&gt;Dialogs, StdCtrls, ExtCtrls;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;type&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;TForm1 = &lt;font color="#000080"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;(TForm)&lt;br/&gt;    Button1: TButton;&lt;br/&gt;    Button2: TButton;&lt;br/&gt;    Button3: TButton;&lt;br/&gt;    Button4: TButton;&lt;br/&gt;    &lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; Button1Click(Sender: TObject);&lt;br/&gt;    &lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; Button2Click(Sender: TObject);&lt;br/&gt;    &lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; Button3Click(Sender: TObject);&lt;br/&gt;    &lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; Button4Click(Sender: TObject);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;Form1: TForm1;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;implementation&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;&lt;br/&gt;&lt;font color="#008284"&gt;{$R *.dfm}&lt;/font&gt;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;uses&lt;/strong&gt;&lt;/font&gt; jpeg, GIFImg, pngimage;&lt;br/&gt;&lt;br/&gt;&lt;font color="#008000"&gt;{显示 jpg 图片}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; TForm1.Button1Click(Sender: TObject);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;jpg: TJPEGImage;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;jpg := TJPEGImage.Create;&lt;br/&gt;jpg.LoadFromFile(&lt;font color="#0000ff"&gt;'C:\Temp\Test.jpg'&lt;/font&gt;);&lt;br/&gt;Canvas.Draw(&lt;font color="#0000ff"&gt;0&lt;/font&gt;, &lt;font color="#0000ff"&gt;0&lt;/font&gt;, jpg);&lt;br/&gt;jpg.Free;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;&lt;font color="#008000"&gt;{显示 png 图片}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; TForm1.Button2Click(Sender: TObject);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;png: TPngImage;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;png := TPngImage.Create;&lt;br/&gt;png.LoadFromFile(&lt;font color="#0000ff"&gt;'C:\Temp\Test.png'&lt;/font&gt;);&lt;br/&gt;Canvas.Draw(&lt;font color="#0000ff"&gt;0&lt;/font&gt;, &lt;font color="#0000ff"&gt;0&lt;/font&gt;, png);&lt;br/&gt;png.Free;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;&lt;font color="#008000"&gt;{显示 gif 图片}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; TForm1.Button3Click(Sender: TObject);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;gif: TGIFImage;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;gif := TGIFImage.Create;&lt;br/&gt;gif.LoadFromFile(&lt;font color="#0000ff"&gt;'C:\Temp\Test.gif'&lt;/font&gt;);&lt;br/&gt;Canvas.Draw(&lt;font color="#0000ff"&gt;0&lt;/font&gt;, &lt;font color="#0000ff"&gt;0&lt;/font&gt;, gif);&lt;br/&gt;gif.Free;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;&lt;font color="#008000"&gt;{显示 gif 动画}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; TForm1.Button4Click(Sender: TObject);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;gif: TGIFImage;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;gif := TGIFImage.Create;&lt;br/&gt;gif.LoadFromFile(&lt;font color="#0000ff"&gt;'C:\Temp\Test.gif'&lt;/font&gt;);&lt;br/&gt;gif.Animate := True;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;with&lt;/strong&gt;&lt;/font&gt; TImage.Create(Self) &lt;font color="#000080"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;    Parent := Self;&lt;br/&gt;    Left := &lt;font color="#0000ff"&gt;0&lt;/font&gt;;&lt;br/&gt;    Top := &lt;font color="#0000ff"&gt;0&lt;/font&gt;;&lt;br/&gt;    Picture.Assign(gif);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;gif.Free;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;.&lt;/pre&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2389214.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389214.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389203.html</id><title type="text">Delphi动态创建控件</title><summary type="text">procedure TForm1.BitBtn1Click(Sender: TObject); var i,d,j:integer; editm:tedit; begin d:=0; j:=strtoint(num.text); for i:=1 to j do begin editm :=tedit.Create(self); with editm do begin editm.Parent:=Scroll...</summary><published>2012-03-10T07:59:00Z</published><updated>2012-03-10T07:59:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389203.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389203.html"/><content type="html">&lt;pre&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt;   TForm1.BitBtn1Click(Sender:   TObject);   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;      i,d,j:integer;   &lt;br/&gt;      editm:tedit;   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;  d:=&lt;font color="#0000ff"&gt;0&lt;/font&gt;;   &lt;br/&gt;  j:=strtoint(num.text);   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;for&lt;/strong&gt;&lt;/font&gt;   i:=&lt;font color="#0000ff"&gt;1&lt;/font&gt;   &lt;font color="#000080"&gt;&lt;strong&gt;to&lt;/strong&gt;&lt;/font&gt;   j   &lt;font color="#000080"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;      editm   :=tedit.Create(self);   &lt;br/&gt;      &lt;font color="#000080"&gt;&lt;strong&gt;with&lt;/strong&gt;&lt;/font&gt;   editm   &lt;font color="#000080"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;      &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;          editm.Parent:=ScrollBox1;   &lt;br/&gt;          editm.Width:=&lt;font color="#0000ff"&gt;120&lt;/font&gt;;   &lt;br/&gt;          editm.Height:=&lt;font color="#0000ff"&gt;20&lt;/font&gt;;   &lt;br/&gt;          editm.Left:=&lt;font color="#0000ff"&gt;0&lt;/font&gt;;   &lt;br/&gt;          editm.Top:=&lt;font color="#0000ff"&gt;0&lt;/font&gt;+d;   &lt;br/&gt;          editm.Name:=&lt;font color="#0000ff"&gt;'edit'&lt;/font&gt;+inttostr(i);   &lt;br/&gt;          editm.Text:=&lt;font color="#0000ff"&gt;'edit'&lt;/font&gt;+inttostr(i);   &lt;br/&gt;          editm.Visible:=true;   &lt;br/&gt;          d:=d+&lt;font color="#0000ff"&gt;20&lt;/font&gt;;   &lt;br/&gt;      &lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;; 给动态创建的Edit控件动态添加OnChange事件：&lt;pre class="Delphi"&gt;&lt;pre&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt;   TForm1.EditChange(Sender:   TObject);   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;      showmessage(Tedit(Sender).text);   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt;   TForm1.EditChange(Sender:   TObject);   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;      showmessage(Tedit(Sender).text);   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;   &lt;br/&gt;    &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt;   TForm1.Button1Click(Sender:   TObject);   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;   NewEdit:Tedit;   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;   &lt;br/&gt;        NewEdit:=Tedit.Create(&lt;font color="#000080"&gt;&lt;strong&gt;nil&lt;/strong&gt;&lt;/font&gt;);   &lt;br/&gt;        NewEdit.Parent:=self;   &lt;br/&gt;        NewEdit.SetBounds(&lt;font color="#0000ff"&gt;10&lt;/font&gt;,&lt;font color="#0000ff"&gt;20&lt;/font&gt;,&lt;font color="#0000ff"&gt;50&lt;/font&gt;,&lt;font color="#0000ff"&gt;21&lt;/font&gt;);   &lt;br/&gt;        NewEdit.OnChange:=EditChange;   &lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;/pre&gt;&lt;/pre&gt;&lt;/pre&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2389203.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389203.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389199.html</id><title type="text">Delphi结束进程模块</title><summary type="text">uses Tlhelp32; function KillTask(ExeFileName: string): integer;const PROCESS_TERMINATE = $0001;var ContinueLoop: BOOLean; FSnapshotHandle: THandle; FProcessEntry32: TProcessEntry32;begin Result := 0; FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); FProcessEntry32.dwSize :=...</summary><published>2012-03-10T07:55:00Z</published><updated>2012-03-10T07:55:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389199.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389199.html"/><content type="html">&lt;pre&gt;&lt;font color="#000080"&gt;&lt;strong&gt;uses&lt;/strong&gt;&lt;/font&gt; Tlhelp32; &lt;br/&gt;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; KillTask(ExeFileName: &lt;font color="#000080"&gt;&lt;strong&gt;string&lt;/strong&gt;&lt;/font&gt;): integer;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;const&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;  PROCESS_TERMINATE = &lt;font color="#0000ff"&gt;$0001&lt;/font&gt;;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;  ContinueLoop: BOOLean;&lt;br/&gt;  FSnapshotHandle: THandle;&lt;br/&gt;  FProcessEntry32: TProcessEntry32;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;  Result := &lt;font color="#0000ff"&gt;0&lt;/font&gt;;&lt;br/&gt;  FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, &lt;font color="#0000ff"&gt;0&lt;/font&gt;);&lt;br/&gt;  FProcessEntry32.dwSize := SizeOf(FProcessEntry32);&lt;br/&gt;  ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);&lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;while&lt;/strong&gt;&lt;/font&gt; integer(ContinueLoop) &amp;lt;&amp;gt; &lt;font color="#0000ff"&gt;0&lt;/font&gt; &lt;font color="#000080"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = UpperCase&lt;br/&gt;          (ExeFileName)) &lt;font color="#000080"&gt;&lt;strong&gt;or&lt;/strong&gt;&lt;/font&gt; (UpperCase(FProcessEntry32.szExeFile) = UpperCase&lt;br/&gt;          (ExeFileName))) &lt;font color="#000080"&gt;&lt;strong&gt;then&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;      Result := integer(TerminateProcess(OpenProcess(PROCESS_TERMINATE, BOOL(&lt;font color="#0000ff"&gt;0&lt;/font&gt;)&lt;br/&gt;              , FProcessEntry32.th32ProcessID), &lt;font color="#0000ff"&gt;0&lt;/font&gt;));&lt;br/&gt;    ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);&lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;  CloseHandle(FSnapshotHandle);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;br/&gt;调用的时候只需要 &lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; KillTask(&lt;font color="#0000ff"&gt;'qq.exe'&lt;/font&gt;) &amp;lt;&amp;gt; &lt;font color="#0000ff"&gt;0&lt;/font&gt; &lt;font color="#000080"&gt;&lt;strong&gt;then&lt;/strong&gt;&lt;/font&gt; &lt;br/&gt;    showmessage(&lt;font color="#0000ff"&gt;'结束QQ成功'&lt;/font&gt;) &lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;else&lt;/strong&gt;&lt;/font&gt; &lt;br/&gt;    showmessage(&lt;font color="#0000ff"&gt;'无法结束QQ'&lt;/font&gt;); &lt;br/&gt;&lt;br/&gt;你在程序里面用一个计时器，每隔一秒钟检查一下，如果有就结束，也就实现了禁止运行的目的。 &lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; TForm1.Timer1Timer(Sender: TObject); &lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt; &lt;br/&gt;    KillTask(&lt;font color="#0000ff"&gt;'qq.exe'&lt;/font&gt;); &lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;/pre&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2389199.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389199.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389186.html</id><title type="text">Delphi随机生成不重复的数</title><summary type="text">procedure TForm1.Button1Click(Sender: TObject);var b: array of integer; num: Integer; //随机数的个数 i, temp: integer;begin num := 10; SetLength(b,num); for i := 1 to num DO b[i] := i; ListBox1.Clear; for i := 1 to num do begin temp := Random(num - i + 1) + 1; ListBox1.Items.Add(I...</summary><published>2012-03-10T07:49:00Z</published><updated>2012-03-10T07:49:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389186.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389186.html"/><content type="html">&lt;pre&gt;&lt;font color="#000080"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/font&gt; TForm1.Button1Click(Sender: TObject);&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;  b: &lt;font color="#000080"&gt;&lt;strong&gt;array&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000080"&gt;&lt;strong&gt;of&lt;/strong&gt;&lt;/font&gt; integer;&lt;br/&gt;  num: Integer;        &lt;font color="#008000"&gt;//随机数的个数&lt;br/&gt;&lt;/font&gt;  i, temp: integer;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;  num := &lt;font color="#0000ff"&gt;10&lt;/font&gt;;&lt;br/&gt;  SetLength(b,num);&lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;for&lt;/strong&gt;&lt;/font&gt; i := &lt;font color="#0000ff"&gt;1&lt;/font&gt; &lt;font color="#000080"&gt;&lt;strong&gt;to&lt;/strong&gt;&lt;/font&gt; num DO&lt;br/&gt;    b[i] := i;&lt;br/&gt;  ListBox1.Clear;&lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;for&lt;/strong&gt;&lt;/font&gt; i := &lt;font color="#0000ff"&gt;1&lt;/font&gt; &lt;font color="#000080"&gt;&lt;strong&gt;to&lt;/strong&gt;&lt;/font&gt; num &lt;font color="#000080"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;begin&lt;/strong&gt;&lt;/font&gt;&lt;br/&gt;    temp := Random(num - i + &lt;font color="#0000ff"&gt;1&lt;/font&gt;) + &lt;font color="#0000ff"&gt;1&lt;/font&gt;;&lt;br/&gt;    ListBox1.Items.Add(IntToStr(b[temp]));&lt;br/&gt;    b[temp] := b[num - i + &lt;font color="#0000ff"&gt;1&lt;/font&gt;];&lt;br/&gt;  &lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;br/&gt;&lt;font color="#000080"&gt;&lt;strong&gt;end&lt;/strong&gt;&lt;/font&gt;;&lt;/pre&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2389186.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389186.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389183.html</id><title type="text">Delphi中建议使用的语句</title><summary type="text">No.1 利用MaxInt常量12345begin Caption := Copy(Edit1.Text, 3, Length(Edit1.Text) - 3 + 1); //不建议//---- Caption := Copy(Edit1.Text, 3, MaxInt); //建议//嘻嘻，少计算一次end;No.2 临时SQL查询1234567891011begin QueryTemp.Close; QueryTemp.SQL.Text := 'Select SUM(金额) AS 合计 FROM 销售表'; QueryTemp.Open; //不建议//数据没有关闭造成资源</summary><published>2012-03-10T07:46:00Z</published><updated>2012-03-10T07:46:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389183.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389183.html"/><content type="html">&lt;div class="cnt" id="blog_text"&gt;&lt;p&gt;No.1 利用MaxInt常量&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  Caption &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #000066"&gt;Copy&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt;&lt;span style="color: #000066"&gt;,&lt;/span&gt; &lt;span style="color: #0000ff"&gt;3&lt;/span&gt;&lt;span style="color: #000066"&gt;,&lt;/span&gt; &lt;span style="color: #000066"&gt;Length&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt; &lt;span style="color: #000066"&gt;-&lt;/span&gt; &lt;span style="color: #0000ff"&gt;3&lt;/span&gt; &lt;span style="color: #000066"&gt;+&lt;/span&gt; &lt;span style="color: #0000ff"&gt;1&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//----&lt;/span&gt;&lt;br/&gt;  Caption &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #000066"&gt;Copy&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt;&lt;span style="color: #000066"&gt;,&lt;/span&gt; &lt;span style="color: #0000ff"&gt;3&lt;/span&gt;&lt;span style="color: #000066"&gt;,&lt;/span&gt; MaxInt&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议//嘻嘻，少计算一次&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;No.2 临时SQL查询&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;br/&gt;9&lt;br/&gt;10&lt;br/&gt;11&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  QueryTemp&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #000066"&gt;Close&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  QueryTemp&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;SQL&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;'Select SUM(金额) AS 合计 FROM 销售表'&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  QueryTemp&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Open&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议//数据没有关闭造成资源浪费&lt;/span&gt;&lt;br/&gt;  ShowMessage&lt;span style="color: #000066"&gt;(&lt;/span&gt;Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;FieldByName&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'合计'&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;AsString&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  QueryTemp&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;SQL&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;'Select SUM(金额) AS 合计 FROM 销售表'&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  QueryTemp&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Open&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  ShowMessage&lt;span style="color: #000066"&gt;(&lt;/span&gt;Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;FieldByName&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'合计'&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;AsString&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  QueryTemp&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #000066"&gt;Close&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议用//使用完就关闭&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.3 获取记录数&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;br/&gt;9&lt;br/&gt;10&lt;br/&gt;11&lt;br/&gt;12&lt;br/&gt;13&lt;br/&gt;14&lt;br/&gt;15&lt;br/&gt;16&lt;br/&gt;17&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;var&lt;/span&gt;&lt;br/&gt;  vRecordCount&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Integer&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;SQL&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;'Select * FROM Table1'&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//严重浪费资源，会取得很多不必要得信息&lt;/span&gt;&lt;br/&gt; Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Open&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  vRecordCount &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;RecordCount&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #000066"&gt;Close&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//--&lt;/span&gt;&lt;br/&gt;  Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;SQL&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;'Select COUNT(*) AS 记录数 FROM Table1'&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//快速有效、只处理一条记录&lt;/span&gt;&lt;br/&gt;  Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Open&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  vRecordCount &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;FieldByName&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'记录数'&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;AsInteger&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #000066"&gt;Close&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;  ShowMessage&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #000066"&gt;IntToStr&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;vRecordCount&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.4 字段赋值&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  Table1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Edit&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  Table1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;FieldByName&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'姓名'&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;AsString&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议&lt;/span&gt;&lt;br/&gt;  Table1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;FieldByName&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'日期'&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;AsDateTime&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #000066"&gt;Date&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  Table1&lt;span style="color: #000066"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'姓名'&lt;/span&gt;&lt;span style="color: #000066"&gt;]&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议//简短、扩充性好&lt;/span&gt;&lt;br/&gt;  Table1&lt;span style="color: #000066"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'日期'&lt;/span&gt;&lt;span style="color: #000066"&gt;]&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #000066"&gt;Date&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.5 使用Self指针&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Parent&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; Form1&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议//Form1只是一个变量&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//如果没有分配资源怎么办？&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Parent&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;Self&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.6 遍历数据集&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;br/&gt;9&lt;br/&gt;10&lt;br/&gt;11&lt;br/&gt;12&lt;br/&gt;13&lt;br/&gt;14&lt;br/&gt;15&lt;br/&gt;16&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;var&lt;/span&gt;&lt;br/&gt;  I&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Integer&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;First&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;for&lt;/span&gt; I &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #0000ff"&gt;0&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;to&lt;/span&gt; Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;RecordCount&lt;/span&gt; &lt;span style="color: #000066"&gt;-&lt;/span&gt; &lt;span style="color: #0000ff"&gt;1&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;do&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//容易被影响&lt;/span&gt;&lt;br/&gt;    Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Next&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;{}&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;First&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;while&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;not&lt;/span&gt; Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #000066"&gt;Eof&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;do&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;{ }&lt;/span&gt;&lt;br/&gt;    Query1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Next&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.7 利用Sender参数，使代码通用&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;procedure&lt;/span&gt; TForm1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Edit1Change&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;Sender&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;TObject&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;    &lt;span style="font-weight: bold; color: #000000"&gt;if&lt;/span&gt; Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;''&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;then&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议&lt;/span&gt;&lt;br/&gt;      Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Color&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; clRed&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;    &lt;span style="font-weight: bold; color: #000000"&gt;if&lt;/span&gt; TEdit&lt;span style="color: #000066"&gt;(&lt;/span&gt;Sender&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;''&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;then&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议//复制到EditXChange中很方便&lt;/span&gt;&lt;br/&gt;      TEdit&lt;span style="color: #000066"&gt;(&lt;/span&gt;Sender&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Color&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; clRed&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.8 使用默认转换函数&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;var&lt;/span&gt;&lt;br/&gt;  I&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Integer&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  I &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #000066"&gt;StrToInt&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  I &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #000066"&gt;StrToIntDef&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt;&lt;span style="color: #000066"&gt;,&lt;/span&gt; &lt;span style="color: #0000ff"&gt;0&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//参考StrToFloatDef,StrToDateDef....不过这些只有Delphi6才有&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.9 遍历数组&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;br/&gt;9&lt;br/&gt;10&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;var&lt;/span&gt;&lt;br/&gt;  I&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Integer&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;  A&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;array&lt;/span&gt;&lt;span style="color: #000066"&gt;[&lt;/span&gt;0&lt;span style="color: #000066"&gt;..&lt;/span&gt;9&lt;span style="color: #000066"&gt;]&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;of&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Integer&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;for&lt;/span&gt; I &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #0000ff"&gt;0&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;to&lt;/span&gt; &lt;span style="color: #0000ff"&gt;9&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;do&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议&lt;/span&gt;&lt;br/&gt;    A&lt;span style="color: #000066"&gt;[&lt;/span&gt;I&lt;span style="color: #000066"&gt;]&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; I&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;for&lt;/span&gt; I &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #000066"&gt;Low&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;A&lt;span style="color: #000066"&gt;)&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;to&lt;/span&gt; &lt;span style="color: #000066"&gt;High&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;A&lt;span style="color: #000066"&gt;)&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;do&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议//扩充性好&lt;/span&gt;&lt;br/&gt;    A&lt;span style="color: #000066"&gt;[&lt;/span&gt;I&lt;span style="color: #000066"&gt;]&lt;/span&gt; &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; I&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.10 判断逻辑类型&lt;/p&gt;&lt;div class="wp_syntax" style="padding-bottom: 0px"&gt;&lt;table class="FCK__ShowTableBorders"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;1&lt;br/&gt;2&lt;br/&gt;3&lt;br/&gt;4&lt;br/&gt;5&lt;br/&gt;6&lt;br/&gt;7&lt;br/&gt;8&lt;br/&gt;9&lt;br/&gt;10&lt;br/&gt;11&lt;br/&gt;12&lt;br/&gt;13&lt;br/&gt;14&lt;br/&gt;15&lt;br/&gt;16&lt;/td&gt;&lt;td class="code"&gt;&lt;span style="font-weight: bold; color: #000000"&gt;var&lt;/span&gt; B&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Boolean&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  B &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Boolean&lt;/span&gt;&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;2&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//这样只是为了调试//B := True;&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;if&lt;/span&gt; B &lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;True&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;then&lt;/span&gt; ShowMessage&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'B = True'&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议//不安全&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;if&lt;/span&gt; B &lt;span style="font-weight: bold; color: #000000"&gt;then&lt;/span&gt; ShowMessage&lt;span style="color: #000066"&gt;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'B'&lt;/span&gt;&lt;span style="color: #000066"&gt;)&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议//简短&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;var&lt;/span&gt; B&lt;span style="color: #000066"&gt;:&lt;/span&gt; &lt;span style="font-weight: bold; color: #000066"&gt;Boolean&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;begin&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;if&lt;/span&gt; Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;'是'&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;then&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//不建议//烦琐&lt;/span&gt;&lt;br/&gt;    B &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;True&lt;/span&gt;&lt;br/&gt;  &lt;span style="font-weight: bold; color: #000000"&gt;else&lt;/span&gt; B &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="font-weight: bold; color: #000000"&gt;False&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #808080; font-style: italic"&gt;//---&lt;/span&gt;&lt;br/&gt;  B &lt;span style="color: #000066"&gt;:&lt;/span&gt;&lt;span style="color: #000066"&gt;=&lt;/span&gt; Edit1&lt;span style="color: #000066"&gt;.&lt;/span&gt;&lt;span style="color: #006600"&gt;Text&lt;/span&gt; &lt;span style="color: #000066"&gt;=&lt;/span&gt; &lt;span style="color: #ff0000"&gt;'是'&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt; &lt;span style="color: #808080; font-style: italic"&gt;//建议//简短&lt;/span&gt;&lt;br/&gt;&lt;span style="font-weight: bold; color: #000000"&gt;end&lt;/span&gt;&lt;span style="color: #000066"&gt;;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;No.11 用FreeAndNil来释放对象&lt;/p&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;&lt;p&gt;使用前不用判断对象是否为空&lt;br /&gt;使用后,Assigned对象为空&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2389183.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/10/2389183.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hssbsw/archive/2012/03/08/2385790.html</id><title type="text">Delphi对 Excel表格的各种操作</title><summary type="text">使用Excel最好用Comobj方式，它能够达到完全控制excel的目的。不过这种方式在Delphi中没有代码提示,而使用Server控件的方式有！下边是使用comobj的，使用Server 的就不放进来了！另外用完Variant要释放掉这样比较好（ExcelApp:=Unassigned;）use Comobj(一) 使用动态创建的方法首先创建 Excel 对象,使用ComObj:var ExcelApp: Variant;ExcelApp := CreateOleObject( 'Excel.Application' );1) 显示当前窗口:ExcelApp.Visible</summary><published>2012-03-08T12:59:00Z</published><updated>2012-03-08T12:59:00Z</updated><author><name>为人民服务</name><uri>http://www.cnblogs.com/hssbsw/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hssbsw/archive/2012/03/08/2385790.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hssbsw/archive/2012/03/08/2385790.html"/><content type="html">&lt;div id="cnblogs_post_body"&gt;&lt;p&gt;使用Excel最好用Comobj方式，它能够达到完全控制excel的目的。&lt;/p&gt;&lt;p&gt;不过这种方式在Delphi中没有代码提示,而使用Server控件的方式有！&lt;br /&gt;下边是使用comobj的，使用Server 的就不放进来了！另外用完Variant要释放掉&lt;br /&gt;这样比较好（ExcelApp:=Unassigned;）&lt;/p&gt;&lt;p&gt;use Comobj&lt;br /&gt;(一) 使用动态创建的方法&lt;br /&gt;首先创建 Excel 对象,使用ComObj:&lt;br /&gt;var ExcelApp: Variant;&lt;br /&gt;ExcelApp := CreateOleObject( 'Excel.Application' );&lt;br /&gt;1) 显示当前窗口:&lt;br /&gt;ExcelApp.Visible := True;&lt;br /&gt;2) 更改 Excel 标题栏:&lt;br /&gt;ExcelApp.Caption := '应用程序调用 Microsoft Excel';&lt;br /&gt;3) 添加新工作簿:&lt;br /&gt;ExcelApp.WorkBooks.Add;&lt;br /&gt;4) 打开已存在的工作簿:&lt;br /&gt;ExcelApp.WorkBooks.Open( 'C:\Excel\Demo.xls' );&lt;br /&gt;5) 设置第2个工作表为活动工作表:&lt;br /&gt;ExcelApp.WorkSheets[2].Activate; &lt;br /&gt;或 &lt;br /&gt;ExcelApp.WorksSheets[ 'Sheet2' ].Activate;&lt;br /&gt;6) 给单元格赋值:&lt;br /&gt;ExcelApp.Cells[1,4].Value := '第一行第四列';&lt;br /&gt;7) 设置指定列的宽度(单位:字符个数),以第一列为例:&lt;br /&gt;ExcelApp.ActiveSheet.Columns[1].ColumnWidth := 5;&lt;br /&gt;8) 设置指定行的高度(单位:磅)(1磅＝0.035厘米),以第二行为例:&lt;br /&gt;ExcelApp.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米&lt;br /&gt;9) 在第8行之前插入分页符:&lt;br /&gt;ExcelApp.WorkSheets[1].Rows[8].PageBreak := 1;&lt;br /&gt;10) 在第8列之前删除分页符:&lt;br /&gt;ExcelApp.ActiveSheet.Columns[4].PageBreak := 0;&lt;br /&gt;11) 指定边框线宽度:&lt;br /&gt;ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;&lt;br /&gt;1-左 2-右 3-顶 4-底 5-斜( \ ) 6-斜( / )&lt;br /&gt;12) 清除第一行第四列单元格公式:&lt;br /&gt;ExcelApp.ActiveSheet.Cells[1,4].ClearContents;&lt;br /&gt;13) 设置第一行字体属性:&lt;br /&gt;ExcelApp.ActiveSheet.Rows[1].Font.Name := '隶书';&lt;br /&gt;ExcelApp.ActiveSheet.Rows[1].Font.Color := clBlue;&lt;br /&gt;ExcelApp.ActiveSheet.Rows[1].Font.Bold := True;&lt;br /&gt;ExcelApp.ActiveSheet.Rows[1].Font.UnderLine := True;&lt;br /&gt;14) 进行页面设置:&lt;br /&gt;a.页眉:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.CenterHeader := '报表演示';&lt;br /&gt;b.页脚:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.CenterFooter := '第&amp;amp;P页';&lt;br /&gt;c.页眉到顶端边距2cm:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;&lt;br /&gt;d.页脚到底端边距3cm:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;&lt;br /&gt;e.顶边距2cm:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.TopMargin := 2/0.035;&lt;br /&gt;f.底边距2cm:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.BottomMargin := 2/0.035;&lt;br /&gt;g.左边距2cm:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.LeftMargin := 2/0.035;&lt;br /&gt;h.右边距2cm:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.RightMargin := 2/0.035;&lt;br /&gt;i.页面水平居中:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;&lt;br /&gt;j.页面垂直居中:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.CenterVertically := 2/0.035;&lt;br /&gt;k.打印单元格网线:&lt;br /&gt;ExcelApp.ActiveSheet.PageSetup.PrintGridLines := True;&lt;br /&gt;15) 拷贝操作:&lt;br /&gt;a.拷贝整个工作表:&lt;br /&gt;ExcelApp.ActiveSheet.Used.Range.Copy;&lt;br /&gt;b.拷贝指定区域:&lt;br /&gt;ExcelApp.ActiveSheet.Range[ 'A1:E2' ].Copy;&lt;br /&gt;c.从A1位置开始粘贴:&lt;br /&gt;ExcelApp.ActiveSheet.Range.[ 'A1' ].PasteSpecial;&lt;br /&gt;d.从文件尾部开始粘贴:&lt;br /&gt;ExcelApp.ActiveSheet.Range.PasteSpecial;&lt;br /&gt;16) 插入一行或一列:&lt;br /&gt;a. ExcelApp.ActiveSheet.Rows[2].Insert;&lt;br /&gt;b. ExcelApp.ActiveSheet.Columns[1].Insert;&lt;br /&gt;17) 删除一行或一列:&lt;br /&gt;a. ExcelApp.ActiveSheet.Rows[2].Delete;&lt;br /&gt;b. ExcelApp.ActiveSheet.Columns[1].Delete;&lt;br /&gt;18) 打印预览工作表:&lt;br /&gt;ExcelApp.ActiveSheet.PrintPreview;&lt;br /&gt;19) 打印输出工作表:&lt;br /&gt;ExcelApp.ActiveSheet.PrintOut;&lt;br /&gt;20) 工作表保存:&lt;br /&gt;if not ExcelApp.ActiveWorkBook.Saved then&lt;br /&gt;ExcelApp.ActiveSheet.PrintPreview;&lt;br /&gt;21) 工作表另存为:&lt;br /&gt;ExcelApp.SaveAs( 'C:\Excel\Demo1.xls' );&lt;br /&gt;22) 放弃存盘:&lt;br /&gt;ExcelApp.ActiveWorkBook.Saved := True;&lt;br /&gt;23) 关闭工作簿:&lt;br /&gt;ExcelApp.WorkBooks.Close;&lt;br /&gt;24) 退出 Excel:&lt;br /&gt;ExcelApp.Quit;&lt;/p&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;if ($ != jQuery) {$ = jQuery.noConflict();}var isLogined = false;var cb_blogId = 72009;var cb_entryId = 2311792;var cb_blogApp = "huangygdelphi";var cb_blogUserGuid = "723b8fa8-8478-df11-ba8f-001cf0cd104b";var cb_entryCreatedDate = '2012/1/4 11:31:00';&lt;/script&gt;&lt;img src="http://www.cnblogs.com/hssbsw/aggbug/2385790.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hssbsw/archive/2012/03/08/2385790.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
