DBGridEH 列锁定问题(50)

  • 主题发起人 主题发起人 wzl1027
  • 开始时间 开始时间
W

wzl1027

Unregistered / Unconfirmed
GUEST, unregistred user!
目前需要解决的问题是 DBGridEH 列能锁定不能移动但是每列的宽度允许拖动(宽度可调), 不知道有什么好的实现方式?
 
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtnrs, StdCtrls, ExcelXP, OleServer, DB, DBClient, ExtCtrls, Grids, DBGrids, ComCtrls;type TDBGrid=Class(DBGrids.TDBGrid) protected procedure ColumnMoved(FromIndex, ToIndex: Longint); override; end; TForm1 = class(TForm) DBGrid1: TDBGrid; private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{ TDBGrid }procedure TDBGrid.ColumnMoved(FromIndex, ToIndex: Integer);begin// inherited;//这里不执行任何函数就可以了end;
 
东西好象不错可以但是拖过来的动作之后,宽度变了
 
在OnFormShow中写代码:DbGridEh1.FrozenCols:=DbGridEh1.Columns.Count-2;
 
在FORM的ONSHOW事件中写如下列代码: Grids.OptionsEh := Grids.OptionsEh+[dghColumnResize]; GRIDS是您的DBGRIDEH的实际的名字
 
后退
顶部