editorsinplacedemocarinfo.pas
来自「delphi的的三方控件」· PAS 代码 · 共 109 行
PAS
109 行
unit EditorsInPlaceDemoCarInfo;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, EditorsInPlaceDemoData, cxStyles, cxMaskEdit, cxMemo,
cxBlobEdit, cxCurrencyEdit, cxInplaceContainer, cxControls,
ExtCtrls, cxRadioGroup, cxImage, cxCheckBox, cxImageComboBox,
cxDropDownEdit, cxTextEdit, cxHyperLinkEdit, cxMRUEdit, ImgList,
cxGraphics, cxCustomData, cxLookAndFeelPainters, StdCtrls, cxButtons,
cxDBVGrid, cxFilter, cxData, cxEdit, DB, cxDBData, cxClasses, cxVGrid;
type
TEditorsInPlaceDemoCarInfoForm = class(TForm)
pnlCarInfo: TPanel;
vgCarInfo: TcxDBVerticalGrid;
Panel2: TPanel;
btnOk: TcxButton;
btnCancel: TcxButton;
vgCarInfoCar: TcxDBMultiEditorRow;
vgCarInfoCategory: TcxDBMultiEditorRow;
vgCarInfoImage: TcxDBEditorRow;
vgCarInfoLargeImageAndPrice: TcxDBMultiEditorRow;
vgCarInfoEngine: TcxDBMultiEditorRow;
vgCarInfoTransmission: TcxDBMultiEditorRow;
vgCarInfoMPG: TcxDBMultiEditorRow;
vgCarInfoWebSite: TcxDBMultiEditorRow;
vgCarInfoDescription: TcxDBEditorRow;
vgCarInfoID: TcxDBEditorRow;
procedure GetDisplayText(
Sender: TcxCustomEditorRowProperties; ARecord: Integer;
var AText: String);
procedure vgCarInfoStylesGetContentStyle(Sender: TObject;
AEditProp: TcxCustomEditorRowProperties; AFocused: Boolean;
ARecordIndex: Integer; var AStyle: TcxStyle);
procedure vgCarInfoLeftVisibleRecordIndexChanged(Sender: TObject);
procedure cxButtonClick(Sender: TObject);
procedure OnEditPropertiesButtonClick(
Sender: TObject);
private
FPopupEdit: TcxPopupEdit;
FAccepted: Boolean;
FEditValue: Variant;
procedure ClosePopup(AAccepted: Boolean);
public
procedure InitPopupPanel(ACarID: Variant);
property PopupEdit: TcxPopupEdit read FPopupEdit write FPopupEdit;
property Accepted: Boolean read FAccepted write FAccepted;
property EditValue: Variant read FEditValue;
end;
var
EditorsInPlaceDemoCarInfoForm: TEditorsInPlaceDemoCarInfoForm;
implementation
{$R *.dfm}
procedure TEditorsInPlaceDemoCarInfoForm.InitPopupPanel(ACarID: Variant);
begin
vgCarInfo.DataController.KeyFieldNames := 'ID';
vgCarInfo.DataController.LocateByKey(ACarID);
FAccepted := False;
end;
procedure TEditorsInPlaceDemoCarInfoForm.ClosePopup(AAccepted: Boolean);
begin
if FPopupEdit = nil then Exit;
FAccepted := AAccepted;
FPopupEdit.DroppedDown := False;
end;
procedure TEditorsInPlaceDemoCarInfoForm.GetDisplayText(
Sender: TcxCustomEditorRowProperties; ARecord: Integer;
var AText: String);
begin
AText := Sender.Caption;
end;
procedure TEditorsInPlaceDemoCarInfoForm.vgCarInfoStylesGetContentStyle(
Sender: TObject; AEditProp: TcxCustomEditorRowProperties;
AFocused: Boolean; ARecordIndex: Integer; var AStyle: TcxStyle);
begin
if AEditProp.Row is TcxCustomMultiEditorRow then
if TcxMultiEditorRow(AEditProp.Row).Properties.Editors[0] = AEditProp then
AStyle := EditorsInPlaceDemoDataDM.styCaption;
end;
procedure TEditorsInPlaceDemoCarInfoForm.vgCarInfoLeftVisibleRecordIndexChanged(
Sender: TObject);
begin
FEditValue := vgCarInfoID.Properties.Values[vgCarInfo.LeftVisibleRecord];
end;
procedure TEditorsInPlaceDemoCarInfoForm.cxButtonClick(Sender: TObject);
begin
ClosePopup(Boolean(TcxButton(Sender).Tag));
end;
procedure TEditorsInPlaceDemoCarInfoForm.OnEditPropertiesButtonClick(
Sender: TObject);
begin
ShowMessage('Button click event handler');
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?