动态创建FastReport4报表2 - 由cxGrid动态创建报表

动态改变FastReport内的Memo内容 Delphi 动态改变FastReport内的Memo内容 Delphi 动态改变FastReport内的Memo内容 Delphi 立即下载

动态创建FastReport4报表2

这次在第一版的基础上增加了对数据集的支持


unit Unit1;
  
interface
  
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, cxGraphics, cxControls, cxLookAndFeels, cxLookAndFeelPainters,
  cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxButtonEdit, cxStyles,
  cxCustomData, cxFilter, cxData, cxDataStorage, DB, cxDBData,
  cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ComCtrls, frxClass,
  ToolWin, ADODB, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, frxDesgn,
  frxDBSet, frxDMPExport, frxDCtrl, frxBarcode;
  
type
  TForm1 = class(TForm)
    cxGrid1DBTableView1: TcxGridDBTableView;
    cxGrid1Level1: TcxGridLevel;
    cxGrid1: TcxGrid;
    ADOTable1: TADOTable;
    DataSource1: TDataSource;
    ADOConnection1: TADOConnection;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    cxGrid1DBTableView1OID: TcxGridDBColumn;
    cxGrid1DBTableView1AID: TcxGridDBColumn;
    cxGrid1DBTableView1Name: TcxGridDBColumn;
    cxGrid1DBTableView1Code: TcxGridDBColumn;
    cxGrid1DBTableView1Description: TcxGridDBColumn;
    cxGrid1DBTableView1Address: TcxGridDBColumn;
    cxGrid1DBTableView1Logo: TcxGridDBColumn;
    cxGrid1DBTableView1Level: TcxGridDBColumn;
    cxGrid1DBTableView1CodeB: TcxGridDBColumn;
    frxDesigner1: TfrxDesigner;
    frxDBDataset1: TfrxDBDataset;
    frxDialogControls1: TfrxDialogControls;
    frxReport1: TfrxReport;
    frxBarCodeObject1: TfrxBarCodeObject;
    procedure ToolButton1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
  
var
  Form1: TForm1;
  
implementation
  
{$R *.dfm}
  
procedure TForm1.ToolButton1Click(Sender: TObject);
var
  vPage: TfrxReportPage;
  vTitle: TfrxReportTitle;
  vHeader: TfrxPageHeader;
  vView: TfrxMemoView;
  vData: TfrxMasterData;
  vDataView: TfrxMemoView;
  vHeadView: TfrxMemoView;
  i: integer;
  vLeft: integer;
begin
  frxReport1.Clear;
  frxReport1.DataSets.Add(frxDBDataset1);
  vPage := TfrxReportPage.Create(frxReport1);
  vPage.CreateUniqueName;
  vPage.LeftMargin := 10;
  vPage.RightMargin := 10;
  vPage.TopMargin := 10;
  vPage.BottomMargin := 10;
  vTitle := TfrxReportTitle.Create(vPage);
  vTitle.CreateUniqueName;
  vTitle.Height := 48;
  vTitle.Top := 0;
  
  vView := TfrxMemoView.Create(vTitle);
  vView.CreateUniqueName;
  vView.Top := 0;
  vView.Left := 0;
  vView.Width := vPage.Width - Round(vPage.LeftMargin * 2.8) - Round(vPage.RightMargin* 2.8);
  vView.Height := vTitle.Height;
  vView.Text := 'This is a title';
  vView.Font.Size := 24;
  vView.Font.Style := vView.Font.Style + [fsBold];
  vView.HAlign := frxClass.haCenter;
  
  vHeader := TfrxPageHeader.Create(vPage);
  vHeader.CreateUniqueName;
  vHeader.Top := 0;
  vHeader.Height := 20;
  
  vData := TfrxMasterData.Create(vPage);
  vData.CreateUniqueName;
  vData.Height := 20;
  vData.Top := 0;
  vData.DataSet := frxDBDataset1;
  vLeft := 0;
  for i := 0 to cxGrid1DBTableView1.ColumnCount - 1 do
  begin
    vDataView := TfrxMemoView.Create(vData);
    vDataview.WordBreak := True;
    vDataView.Frame.Typ := [ftLeft, ftRight, ftTop, ftBottom];
    vDataView.VAlign := frxClass.vaCenter;
    vDataView.Top := 0;
    vDataView.Left := vLeft;
    vDataView.Height := vData.Height;
    vDataView.Font.Name := 'Tahoma';
    vDataView.Font.Size := 8;
  
    vHeadView := TfrxMemoView.Create(vHeader);
    vHeadView.CreateUniqueName;
    vHeadView.WordBreak := True;
    vHeadView.Frame.Typ := [ftLeft, ftRight, ftTop, ftBottom];
    vHeadView.VAlign := frxClass.vaCenter;
    vHeadView.Left := vLeft;
    vHeadView.Height := vData.Height;
    vHeadView.Font.Name := 'Tahoma';
    vHeadView.Font.Size := 8;
  
    vDataView.Width := cxGrid1DBTableView1.Columns[i].Width;
  
    vHeadView.Width :=cxGrid1DBTableView1.Columns[i].Width;
    vHeadView.Text := cxGrid1DBTableView1.Columns[i].Caption;
    vDataView.Text := Format('[frxDBDataset1."%s"]', [cxGrid1DBTableView1.Columns[i].DataBinding.FieldName]);
    vleft := vLeft + cxGrid1DBTableView1.Columns[i].Width;
  end;
  
//  frxReport1.PrepareReport();
  frxReport1.ShowReport();
//  frxReport1.DesignReport();
end;
  
  
  
end.



SDR实战(五)-AD9361多芯片同步技术详解 本文详细解析了AD9361多芯片同步技术在SDR系统中的实现方法,涵盖硬件连接方案、软件配置流程及同步验证技巧。通过等长时钟走线、低抖动时钟分配和精确的SYNC信号控制,解决MIMO系统中多AD9361芯片的时钟同步难题,提升系统性能与稳定性。 阅读详情

相关推荐

【YOLOv8实战】从零构建番茄成熟度智能检测GUI系统【附完整工程】

本文详细介绍了从零构建基于YOLOv8的番茄成熟度智能检测GUI系统的完整实战流程。内容涵盖环境搭建、数据集准备、模型训练调优,并重点讲解如何使用PyQt5开发图形界面,最终将项目打包为可执行文件,实现AI模型从训练到桌面应用落地的完整工程闭环。

xxx12的博客 821

在Winform开发中使用FastReport创建报表

FastReport.Net是一款适用于Windows Forms, ASP.NET和MVC框架的功能齐全的报表分析解决方案。可用在Microsoft Visual Studio 2005到2015,支持.Net Framework 2.0到4.x。我下载了一个FastReport进行测试使用,这个报表功能还是很强大的。 对其中FastReport的一些功能,我编写整理了一个小小的案例进行介绍,...

weixin_33967071的博客 758

C++新手也能搞定!Windows下Cesium-Native编译全流程(附依赖下载技巧)

本文为C++新手详细介绍了在Windows系统下编译Cesium-Native库的全流程。重点针对网络环境不佳的情况,提供了手动下载依赖库的实用技巧,并指导用户使用CMake配置、生成解决方案,最终完成编译与测试验证,帮助开发者成功构建这一处理3D地理空间数据的C++运行时库。

weixin_28839549的博客 380

报表开发工具FastReport.NET - 以编程方式从本机代码创建表格报表

本文主要为大家介绍如何以编程方式从本机代码创建表格报表,欢迎下载最新版体验!

需要界面开发、IDE工具研发中文教程资料的小伙伴,记得私信我~ 8648

攀藤PMS系列传感器STM32驱动开发与数据解析实战

本文详细介绍了攀藤PMS系列传感器与STM32微控制器的驱动开发与数据解析实战,涵盖硬件连接、数据协议解析、驱动源码编写及数据处理优化。重点解析了传感器数据帧结构,提供了完整的STM32驱动实现代码,并分享了实际应用中的问题排查与性能优化经验,帮助开发者快速实现高精度颗粒物浓度检测。

milk8的博客 347

基于NXP i.MX RT1180的无传感器FOC电机驱动实战指南

磁场定向控制(FOC)是一种先进的电机控制技术,它通过精密的数学变换,将三相交流电机的控制解耦为独立的转矩和磁场分量,从而实现高效、平稳、低噪音的驱动。其核心原理在于利用Park/Clark变换,在旋转坐标系下对电流进行线性控制。这项技术的价值在于显著提升了永磁同步电机(PMSM)的效率与动态性能,广泛应用于机器人、无人机和工业自动化等高精度场景。本文聚焦于利用NXP i.MX RT1180跨界处理器及其MCUXpresso SDK,快速实现一套完整的无传感器FOC解决方案。通过解析硬件平台选型、软件架构,

weixin_33925615的博客 303

字段名、字段数不确定时,用 FastReport 动态生成报表

放置有效地Table和DataSource,frxReport 和 frxDBDataSet,不需要再报表设计器内放置任何控件,直接由代码生成报表。  但如果是交叉表,FastReport 也提供另外一种解决方案 TfrxCrossView 进行列表  以下是全代码生成报表的简单例子。  TfrxDataPage * DataPage;  TfrxReportPage * Page;

NULL BLOG 7685

AURIX TC397开发板到手第一步:用iLLD库驱动LED流水灯(附完整代码)

本文详细介绍了如何使用英飞凌AURIX TC397开发板和iLLD库实现LED流水灯效果。从开发环境配置到硬件连接,再到完整的代码实现,逐步引导开发者完成项目。文章还提供了优化建议和常见问题解决方案,帮助嵌入式开发新手快速上手。

weixin_30911451的博客 390

动态创建FastReport4报表

procedure TForm1.Button1Click(Sender: TObject); var vPage: TfrxReportPage; vTitle: TfrxPageHeader; vView: TfrxMemoView; vData: TfrxMasterData; begin frxReport1.Clear; vPage := TfrxReportPa

火龙岛 1833

无感健康监测的未来:毫米波雷达如何重新定义睡眠科技与居家养老

毫米波雷达技术正重新定义无感健康监测,特别是在睡眠科技与居家养老领域。通过精准监测呼吸、心率和体动,无需穿戴设备即可实现临床级精度。结合合宙Air700E开发板,构建了完整的远程看护解决方案,为老年人提供跌倒检测、异常报警等安全保障,同时保护用户隐私。

cake8的博客 566

Doris StreamLoad任务报错Connection reset

背景 Spark程序扫一张Hive表(大小3-7G),然后用http协议的streamLoad任务提交给Doris集群,在Doris集群从0.13.15升级到0.14.12后spark程序报错streamLoad时突然会Connection reset 分析 enable_http_server_v2 这个参数可以参考FE中文配置中查看到,作用是对于Doris界面是否开启新风格的界面,但是实际上他的作用远不止如此,请接着看 新老版本对于enable_http_server_v2参数默认值是不同的 在0.13

gaofeng的博客 3307

FastReport.net 使用 Winform WebForm打印

delphi用的fastreport比较多 所以。net中也研究一下用法,这个打印控件还是很简单的 只要手动设计一下写少许代码就可以打印了 甚至可以写成通用代码 以后就可以不用写代码 安装demo会同时安一个设计器 打开设计器 通过设计器设计模板 新建数据源 新建数据集 查询单表全部内容,选中完成即可,现在我们要做一个带参数的可以查询固定数据的数据集 ...

weixin_30245867的博客 1011

18-XLINX的XC7A100T的BANK0引脚说明

DXP_0和 DXN_0是纯输入引脚,Xilinx Artix-7 FPGA 内部集成的一个片上监控模数转换器​ 的差分模拟输入对,模数转换器​的模拟信号输入端,将外部的模拟电压​ 采样并转换为内部的数字值,是一个单向的信号采集过程。它是与 VCCADC配对的关键引脚,共同为内部的精密模数转换器提供一个纯净、安静、独立的参考地平面。多FPGA同步配置: 在多FPGA系统中,主FPGA配置完成后,可以拉低从FPGA的 INIT_B使其等待,等所有FPGA都准备好后,再同时释放,实现同步启动。

weixin_44479192的博客 232

FastReport使用经验集合

FastReport经验 1.FastReport中如果访问报表中的对象? 可以使用FindObject方法。 TfrxMemoView(frxReport1.FindObject(’memo1′)).Text:=’FastReport’; 2.FastReport中如何使用上下标? 设置frxmemoview.AllowHTMLTags := True;在Text输入如下 上标:mm<sup>2</sup> 下表:k<sub>6</sub> 举一反三,你

2272

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

fastreport 总结

1.FastReport中如果访问报表中的对象? 可以使用FindObject方法。 TfrxMemoView(frxReport1.FindObject(’memo1′)).Text:=’FastReport’; 2.FastReport中如何使用上下标? 设置frxmemoview.AllowHTMLTags := True;在Text输入如下 上标:mm<sup>2</s...

全欣 的专栏 1336

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

FastReport 使用技巧篇

使用技巧篇 1.FastReport中如果访问报表中的对象? 可以使用FindObject方法。 TfrxMemoView(frxReport1.FindObject(‘memo1’)).Text:=‘FastReport’; 2.FastReport中如何使用上下标? 设置frxmemoview.AllowHTMLTags:= True;在Text输入如下 上标:mm2 下表:k6 举一反三,你...

gx15941883020的专栏 2438

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

FastReport新版本新增的功能

新版本 1.FastReport中如果访问报表中的对象? 可以使用FindObject方法。 TfrxMemoView(frxReport1.FindObject('memo1')).Text:='FastReport'; 2.FastReport中如何使用上下标? 设置frxmemoview.AllowHTMLTags := True;在Text输入如下 上标:mm<sup>2</sup> 下表:k<sub>6</sub> 举一反...

weixin_45648860的博客 503

FastReport问题整理

部分来自网上,部分来自网友,部分来自Demo如果有新的内容,会不断更新.. 更新历史: 2009-02-27 加入套打方案全攻略(原:jinzhili博客) 2009-03-03 FastReport打印CxGrid数据 ========================================================================新版本 1.Fas...

EKO_KL的专栏 397

FastReport问题整理(技巧)

FastReport问题整理 部分来自网上,部分来自网友,部分来自Demo 如果有新的内容,会不断更新.. 更新历史: 2009-02-27 加入套打方案全攻略(原:jinzhili博客) 2009-03-03 FastReport打印CxGrid数据 ===================================================================

缘起§缘灭 1362

cxGrid常用属性设置

OptionsView部分 是否使用表头分组:cxGrid1DBTableView1.OptionsView.GroupByBox 单元格高度自适应:cxGrid1DBTableView1.OptionsView.CellAutoHeight 单元格列宽自适应cxGrid1DBTableView1.OptionsView.ColumnAutoWidth 是否启用页脚:cxGri...

weixin_34319111的博客 160

怎么样打印cxgrid过滤后的数据

用语句cxGridDBTableView.Controller.Filter.Filteringtext获得筛选语句   你可以在程序中用ADOQUERY来接受这条语句(还可以自己扩展)   FSATREPORT的数据集指向QUERY就可以了     试试。   adoquery1.Filtered   :=true;             try                 adoqu...

martian6125 's blog! 185

升级了DevExpress全系列组件

今天终于狠下心下升级DevExpress 全系列的组件,cxGrid对日期支持加强了,特别是在过滤方面一下子多了好多项,不过那个Overflow while converting variant of type(Integer) into type(Date)的错误还是没解决,必须修改cxDateUtils.pas,将NullDate = -700000改为NullDate = -1才正常。而dx

编程手札 4206

DBGRID分组显示

DBGRID分组显示 Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiDB/html/delphi_20061215112306293.html 我想做一个表格,里面的数据可以按照某一个字段进行分组。     例如:         原数据如下             外科检查             ...

weixin_34080571的博客 212

Delphi 精选文章地址

Delphi 三层开发 ************ http://blog.youkuaiyun.com/lailai186/article/category/1396968 Delphi CxGrid 汇总 ************ http://blog.youkuaiyun.com/lailai186/article/details/8824724 delphi四种消息框  **...

weixin_30950887的博客 122
上一篇: 2012写给自己的年终报告
下一篇: 当你学不进去的时候,试试“普瑞马法则”
火龙岛主
博客等级 码龄25年 256粉丝 50原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值