• 2024-11-14cxGrid【过滤、排序】后获取选中记录的值和cxGrid空表判断
    方法一:使用函数GetRowValue此方法在表格过滤、排序后也正常,请注意:此代码顺序需要CXGRID的列顺序和ADOQUERY中SELECT的字段顺序一致,否则会取错。procedureTfrmBillExtraction.pmGetBill_D_DatasClick(Sender:TObject);varI,J:Integer;beginwithcxGDBTV_Bill_M.Data
  • 2024-08-15cxgrid使用三问1cxgrid 如何动态创建列2cxGrid 通过字段名取得列3cxGrid动态创建的列里动态创建事件的方法
    //1cxgrid动态创建列procedureTFrmRuleEdit.CreateCols;varColumn:TcxGridDBColumn;begincdsPowerPrj.First;whilenotcdsPowerPrj.EofdobeginColumn:=viewPower.CreateColumn;Column.Caption:=cdsPowerPrj.FieldByName('description').Text;Column.D
  • 2024-07-13delphi dev cxgrid 列绑定Richedti 支持过滤
    默认是不支持过滤的,这里需要改到内部的一些源码文件。先说思路:1.要让列支持过滤需要重载richedit类的 GetSupportedOperations,typeTcxRichEditProperties=class(cxRichEdit.TcxRichEditProperties)publicfunctionGetSupportedOperations:TcxEditSupportedOpe
  • 2024-05-27Delphi CxGrid/CxDBTreeList等将排序筛选条件改为中文方法
    Delphi CxGrid/CxDBTreeList等将排序筛选条件改为中文方法一、加入cxLocalizer控件二、在FormCreate里加入以下代码procedureTForm1.FormCreate(Sender:TObject);begin cxLocalizer1.LoadFromResource(HInstance); cxLocalizer1.Language:='中文(简体,中国)';
  • 2024-05-19delphi cxgrid 自定义画焦点框
    procedureTMyTable.MyBandedTableViewCustomDrawCell(Sender:TcxCustomGridTableView;ACanvas:TcxCanvas;AViewInfo:TcxGridTableDataCellViewInfo;varADone:Boolean);varbounds:TRect;beginifAViewInfo.Focusedthenbeginbounds:=A
  • 2024-04-16DELPHI cxgrid 统计主从表中,从表的记录数量
    效果如图所示:核心代码:procedureTForm1.Button1Click(Sender:TObject);varAIndex,I,ATotalSelectedCount,ASelectedRecordsCount:integer;AMasterView:TcxGridDBTableView;ADetailDataController:TcxCustomDataController;beginATotalSelectedCount:=
  • 2024-03-19CxGrid的终极风格设置
    凡是使用Delphi的程序员,我敢说99%使用过CxGrid。众所周知,CxGrid的套件有自己的皮肤风格管理体系,你如果用其它第三方的皮肤控件来美化你的程序,一旦进入到CxGrid则头疼不已。哪怕你专门为某一种皮肤设计了适合CxGrid的Style,一旦换肤,前功尽弃。总不能控件有100种皮肤,你设计100
  • 2024-03-11cxGrid图表的使用
    官方示例效果一、图表和数据多标签效果 二、自定义图表和选择图表类型(Border是否显示边线) 三、图表标题(Alignment文字对齐方式,Position标题相对图表的位置,上方、左方、右方、下方) 四、是否透明标注边框,选择透明后没有边框和白色底色  五、鼠标移动上去聚焦选中 
  • 2024-02-16D11-cxGrid导出Excl亲测OK
    需要引用uses  cxGridExportLink;procedureTForm1.dxBarLargeButton5Click(Sender:TObject);varSaveDialog:TSaveDialog;path:string;//路径信息ExcelAPP:Variant;//变体变量beginSaveDialog:=TSaveDialog.Create(nil);path:='';trywithSaveD
  • 2023-12-20delphi cxgrid 过滤列表增加右键
    首先弹出来的下拉过滤列表也是一个form思路,在不改源代码的情况:hook,捕捉  WM_SHOWWINDOW 消息,通过源码得知窗口类名为”TcxGridFilterPopup“ 再通过句柄转得到实例,同时在本单元type一下新的 TcxGridFilterPopup, TcxGridPopupListBox才能访问保护起来的方法跟属性C
  • 2023-12-16保存/恢复cxGrid布局
    //恢复布局IniFileName:=ExtractFilePath(Application.ExeName)+'Layout/'+Self.Name+'.ini';ifFileExists(IniFileName)thenSelf.tvResult.RestoreFromIniFile(IniFileName)//从布局文件中恢复elsebeginSelf.tvResult.BeginUpdate;fori:=0toSelf.tvR
  • 2023-10-30Cxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值
    cxGrid,数据库中存在:GongSiNo,GongSiMc;cxGrid中显示列GongSiMc,Properties指定的是ComBoBox,GongSiMc变化时更新GongSiNo的值并存入数据库。在Properties的OnChange事件中写代码:{GSNo,GSMc:string;}GSMc:=cxgrdCZYDBTableView1.Controller.EditingController.Edit.EditingValue;
  • 2023-09-23Delphi:cxGrid的使用方法
    Delphi:cxGrid的使用方法1.去掉cxgrid中抬头的box,在tableview1的ptionsview的groupbybox=false;2.在GRIDfooter中加入sum(列),tableview1的optionsview的footer=ture然后在cxGRid1的customize中的summary的footer.add需要合计的列kind=skSum3.去掉cxgrid中的过滤下拉
  • 2023-08-07cxGrid使用技巧()
     Delphi之CXGrid的使用方法_大龙软件研发的博客-CSDN博客Delphi之cxGrid使用技巧八(GridMode)Delphi之cxGrid使用技巧十  (执行查询是进度条) delphi动态设置和访问cxgrid列的Properties设置:    cxGrid1DBTableView1Column.PropertiesClass = TcxTextEd
  • 2023-05-21delphi cxGrid做一个空白的出/入库单
    效果图: 实现的原理:1.在数据库建一个表,然后绑定到cxgrid上面.数据表各字段的数据类型,按你的业务需求来设置,同时要允许空值,因为我们必须让它们保持空值,这样在绑定到cxgrid时,才会是空白的,然后再弄个自增的主键ID.下面这张图是我研究时截的图,不想改了,凑合着用吧2.绑
  • 2023-05-20delphi cxgrid截图
    效果图: 点击GetImage,会在程序目录下生成一个表格截图的图片文件,打开后如下图:以下是代码:procedureTForm4.SpeedButton1Click(Sender:TObject);vargridView:TcxGridDBTableView;focusedItem:TcxCustomGridTableItem;focusedRect:TRect;aBitmap:TBitm
  • 2023-05-19CxGrid合计相关
    1.OnSummaryAfterSummary事件,CxGrid合计计算后触发此事件可以在事件里获取其值,做相关处理//实售价if(cxGrid1DBTableView1.DataController.Summary.FooterSummaryValues[0]<>null)thenbegin//ThisTimeAccount.Caption:=FloatToStr(cxGridDBTableView1.DataContro
  • 2023-05-06cxgrid显示行号
    把cxGridView里OptionsView选项中的两项修改成如下OptionsView.Indicator=TrueOptionsView.IndicatorWidth=40//宽度在customDrawIndicatorCell事件中填写procedureTForm1.cxGrid1BandedTableView1CustomDrawIndicatorCell(Sender:TcxGridTableView;ACanvas:TcxCanvas
  • 2023-04-05cxgrid行内编辑按钮
    cxgrid行内编辑按钮在每行的数据最后一列显示一个按钮,点击按钮删除对应的数据。使用cxGrid能完美实现。1、设置按钮列的properties是buttonedit2、设置properties下的属性 viewStyle=vsButtonsAutoWidth3、设置Options中的 ShowEditButtons=isebAlways4、点击properties下
  • 2023-03-18CXGrid中获取多行选择的值
    1.遍历Grid的DataController,获取所有被选择的行。2.遍历每个被选择的行,获取每个单元格的值。以下是示例代码:procedureTForm1.Button1Click(Sender:TObject);varASel
  • 2023-03-04delphi 在cxgrid中展示物料各自的显示精度
    效果图:  数据库设计:  设计视图:  方法一使用TcxEditRepository控件.双击TcxEditRepository控件,进行添加.这里选择新增货币格式.  为每一种样式设置
  • 2023-03-03delphi 自定义cxGrid的导航面板
    效果图  面板设置:1.把导航面板显示出来:Navigator.visible:=true 2.在Navigator-Buttons下设置自己需要显示或者隐藏的按钮  3.添加自定义按钮  双
  • 2023-02-16delphi cxGrid过滤器配合TFDQuery过滤器,完美!
    效果图:  设计图(数据库是ACCESS类型):   需求:1.cxGrid默认的模糊匹配符为%,太麻烦了,想用*号代替(ACCESS数据库,只认*,不认%)2.cxGrid默认是在用
  • 2023-02-12delphi cxGrid做一个可以控制单元格数量上限和下限的功能
    先看效果图效果要求:1.点击申领数量时,自动设置此物料可领上限,与可退的下限2.申领数量为0时,不更新说明:1.使用了cxGrid+FireDAC2.TFDQuery控
  • 2023-01-28delphi cxgrid导出EXCEL并打开文件
     usesVcl.OleAutoprocedureT供应商管理.dxBarLargeButton3Click(Sender:TObject);varSaveDialog:TSaveDialog;path:string;//路径信息ExcelAPP: