0

我使用 Delphi BDS 2006 并有一个属性设置为 DateEdit 的 DevExpress cxGridDBColumn 并且想知道是否可以在显示的日期时间选择器弹出窗口中添加一个复选框?

4

2 回答 2

2

我不确定我是否理解您希望达到的目标。无论如何,如果不创建支持这种外观和所需功能的自定义 cxEditor 是不可能的。

于 2010-09-21T17:28:19.210 回答
0

这是一个快速 hack,应该可以帮助您实现此功能。但是,您应该自己处理复选框。我已经为独立编辑器完成了此操作,但是,相同的方法将适用于就地编辑器:

procedure TForm1.cxDateEdit1PropertiesPopup(Sender: TObject);
var
  AEdit: TcxDateEdit;
  ACalendar: TcxPopupCalendar;
  ACheckBox: TcxCheckBox;
begin
  AEdit := TcxDateEdit(Sender);
  if AEdit.Tag <> 1 then
  begin
    AEdit.Tag := 1;
    ACalendar := TcxPopupCalendar(AEdit.Properties.PopupControl);
    ACheckBox := TcxCheckBox.Create(Self);
    ACheckBox.Parent := ACalendar.Parent;
    ACheckBox.Align := alBottom;
    ACheckBox.Transparent := True;
    ACalendar.Parent.Height := ACalendar.Parent.Height + ACheckBox.Height;
  end;
end;
于 2010-09-22T09:26:23.903 回答