DBGRIDEH问题? |
答題得分者是:sos_admin
|
sl@cableplus.com.cn
高階會員 發表:168 回覆:359 積分:130 註冊:2004-03-26 發送簡訊給我 |
|
sos_admin
版主 發表:121 回覆:697 積分:768 註冊:2003-07-23 發送簡訊給我 |
我大概作了一下这样效果,你可以按着这个思路去实现,即可!
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, CheckLst; type TForm1 = class(TForm) DBGrid1: TDBGrid; Panel1: TPanel; CheckListBox1: TCheckListBox; Label1: TLabel; Button2: TButton; Button3: TButton; procedure DBGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if Shift = [ssRight] then begin Panel1.Left := X; Panel1.Top := Y; Panel1.Visible := True; end else Panel1.Visible := false; end; procedure TForm1.Button2Click(Sender: TObject); var col: TColumn; i: Integer; begin DBGrid1.Columns.Clear; for i := 0 to CheckListBox1.Count - 1 do if CheckListBox1.Checked[i] then begin col := DBGrid1.Columns.Add; col.Title.Caption := CheckListBox1.Items.Strings[i]; col.Visible := True; end; Panel1.Visible := false; end; procedure TForm1.Button3Click(Sender: TObject); begin Panel1.Visible := false; end; end.风花雪月 e梦情缘 网络代号:wnhoo or sos_admin 网名:e梦缘 Mail:wnhoo@163.com |
sl@cableplus.com.cn
高階會員 發表:168 回覆:359 積分:130 註冊:2004-03-26 發送簡訊給我 |
|
sos_admin
版主 發表:121 回覆:697 積分:768 註冊:2003-07-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |