線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1750
推到 Plurk!
推到 Facebook!

DBGrid控制項的顯示text、ntext 等欄位的問題重新提問

答題得分者是:andychang1690
jean2004
初階會員


發表:69
回覆:80
積分:39
註冊:2004-12-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-20 18:06:04 IP:222.135.xxx.xxx 未訂閱
http://delphi.ktop.com.tw/topic.php?topic_id=74974 各位大蝦,我在上面網頁所提DBGrid控制項的顯示text、ntext 等欄位的問題,代碼都是Delphi的,小弟研究了幾天也不知其所以然,只知道有兩種方法可以實現小弟要求的功能,不知道那位大蝦能給小弟一些BCB的代碼,讓小弟能參考一下,感激不盡,先謝謝各位了!
jean2004
初階會員


發表:69
回覆:80
積分:39
註冊:2004-12-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-21 17:58:21 IP:222.135.xxx.xxx 未訂閱
大蝦們,是BCB不能作還是沒有大蝦會?
jean2004
初階會員


發表:69
回覆:80
積分:39
註冊:2004-12-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-22 07:53:46 IP:222.135.xxx.xxx 未訂閱
現在Text = Sender->AsString的方法我已經會了,我想通過把DBMemo控制項嵌入DBGrid的單格的辦法實現,不知道該如何實現
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-23 01:41:20 IP:221.169.xxx.xxx 未訂閱
jean2004:如果你只是要轉
http://delphi.ktop.com.tw/topic.php?topic_id=74974
裡面的
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
  F:TField;
  ACanvas : TCanvas;
begin
  f:= Column.Field;
  // 非Memo型態 請離開
  If Not f.DataType IN [ftMemo, ftFmtMemo] Then Exit;
  ACanvas := TDBGrid(Sender).Canvas;
  //===========================
  //  在此可以設定字體背景顏色等資訊
  //===========================
  // 將Memo欄位用String畫出來
  ACanvas.textrect(Rect,Rect.Left,Rect.Top,F.AsString);
end;
為BCB
那就是
void __fastcall TForm1::DBGrid1DrawColumnCell(TObject *Sender,
      const TRect &Rect, int DataCol, TColumn *Column,
      TGridDrawState State)
{
  // 僅處理Memo型態
  if (Column->Field->DataType == ftMemo || Column->Field->DataType == ftFmtMemo)
    DBGrid1->Canvas->TextRect(Rect,Rect.Left,Rect.Top,Column->Field->AsString);
}
請參考!並不太複雜。
Andy Chang
------
Andy Chang
系統時間:2024-04-25 17:45:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!