談笑有鴻儒,往來無白丁

          在恰當的時間、地點以恰當的方式表達給恰當的人...  閱讀的時候請注意分類,佛曰我日里面是談笑文章,其他是各個分類的文章,積極的熱情投入到寫博的隊伍中來,支持blogjava做大做強!向dudu站長致敬>> > 我的微博敬請收聽
          1、sql := 'SELECT To_char(SYSDATE,'+ QuotedStr('yyyy-MM-dd hh:mm:ss')+') as d FROM Dual';
          ??????QuotedStr : 此函數的作用保證數據庫里面執行的SQL不會因為‘,等特殊字符而出錯;
          ??????Dual????????? : oracle數據庫里面的函數。
          2、????????? Application.ProcessMessages;
          這個語句的作用很大啊,工控里面有專門負責數據采集的程序,時時的需要采集數據,里面要是不加上這么一句話你的前臺展示,就會很難看,鼠標點擊下去,老半天沒有反應。
          3、Delphi--Stream和Variant的轉化網上廣為流傳的兩個函數,確實好用。
          procedure VariantToStream (const v : OleVariant; Stream : TMemoryStream);
          var
          ? p : pointer;
          begin
          ? Stream.Position := 0;
          ? Stream.Size := VarArrayHighBound (v, 1) - VarArrayLowBound (v, 1) + 1;
          ? p := VarArrayLock (v);
          ? Stream.Write (p^, Stream.Size);
          ? VarArrayUnlock (v);
          ? Stream.Position := 0;
          end;

          procedure StreamToVariant (Stream : TMemoryStream; var v : OleVariant);
          var
          ? p : pointer;
          begin
          ? v := VarArrayCreate ([0, Stream.Size - 1], varByte);
          ? p := VarArrayLock (v);
          ? Stream.Position := 0;
          ? Stream.Read (p^, Stream.Size);
          ? VarArrayUnlock (v);
          end;


          4、這個函數也是非常鎮的,

          function ByteType(const S: string; Index: Integer): TMbcsByteType;
          IsDBCSLeadByte
          告訴你一個非常有用的函數。

          bytetype? 它可以判斷一個字符串中,某個 Char 是單個字母,還是雙字節的前一位或
          后一位。
          mbSingleByte?單字母
          mbLeadByte?雙字節第一位
          mbTrailByte?雙字節第二位

          在copy(Str,1,12)中結果有個全角的8,,,過不去了居然quotedstr()的結果也出現了?我怎么辦

          function TFrmMain.procQJWT(olds: String): String;
          var
          ? tmp : string;
          begin
          ? tmp := Trim(olds);

          ? Result := tmp;?
          ? if Length(tmp)>12 then
          ? begin
          ??? //是單個字符
          ??? if? ByteType(tmp,12)=mbLeadByte then
          ????? result := Copy(tmp,1,11)
          ??? else
          ????? result := Copy(tmp,1,12);
          ? end;
          end;

          寫了一個函數就解決戰斗了!

          posted on 2006-12-20 15:07 壞男孩 閱讀(1276) 評論(3)  編輯  收藏 所屬分類: DELPHI

          FeedBack:
          # re: DELPHI常用的流水賬!不斷更新
          2006-12-21 10:31 | 嘎崩豆
          嘻嘻,delphi 上手還是很不錯的,學了一段時間,項目做完不用偶又忘了。  回復  更多評論
            
          # re: DELPHI常用的流水賬!不斷更新
          2006-12-22 14:42 | ghost
          我一直用QuotedStr
          不光不會出錯,還美觀大方,呵呵  回復  更多評論
            
          # re: DELPHI常用的流水賬!不斷更新
          2007-07-18 09:13 | 老鼠灰灰
          現在剛剛開始學習delphi 技術,對其中的控件的一些使用還不是很熟。正在努力。我會常常關注的。嘻嘻。  回復  更多評論
            
          主站蜘蛛池模板: 普兰县| 金沙县| 基隆市| 巩义市| 和顺县| 新邵县| 临夏县| 乐业县| 黎城县| 濮阳县| 宣威市| 滨州市| 休宁县| 慈利县| 云林县| 台东市| 玉龙| 邛崃市| 安岳县| 临武县| 铜山县| 饶阳县| 图片| 田东县| 郸城县| 手机| 保康县| 合肥市| 泾源县| 崇仁县| 南充市| 晋城| 保康县| 蒲江县| 景谷| 新河县| 大田县| 平江县| 师宗县| 昌宁县| 吉隆县|