社区
C++ Builder
帖子详情
求助,关于GRID
yuanque
2002-09-03 01:08:53
我想用CB中的TStringGrid来实现数据的展示(不一定是数据库中的数据,所以没有考虑用TDBGrid),但TStringGrid我感觉有点简单,因为我希望单元格可以有多种样式(如按钮,下拉框,图片,单选框等),不知怎么解决好,希望大家帮忙出主意!
...全文
69
8
打赏
收藏
求助,关于GRID
我想用CB中的TStringGrid来实现数据的展示(不一定是数据库中的数据,所以没有考虑用TDBGrid),但TStringGrid我感觉有点简单,因为我希望单元格可以有多种样式(如按钮,下拉框,图片,单选框等),不知怎么解决好,希望大家帮忙出主意!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yuanreid
2002-09-03
打赏
举报
回复
比如要TStringGrid支持TListBox作为编辑对象(即下拉框),
第一步:可以先从TCustomListBox继承一个自己的类,假如叫TPopupListbox。必须实现两个保护的方法(protected):
void __fastcall CreateParams(Controls::TCreateParams & Params);
void __fastcall CreateWnd(void);
同时还需要处理一些按键和鼠标事件
DYNAMIC void __fastcall KeyPress(char &Key);
DYNAMIC void __fastcall MouseUp(TMouseButton Button, TShiftState Shift, int X, int Y);
第二步:从TInplaceEdit类继承自己的TGridInplaceEdit,并在TPopupListbox类中把TGridInplaceEdit添加为友元。
添加如下代码:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(WM_SETCURSOR, TWMSetCursor, WMSetCursor)
VCL_MESSAGE_HANDLER(WM_PAINT, TWMPaint, WMPaint)
VCL_MESSAGE_HANDLER(WM_LBUTTONDBLCLK, TWMLButtonDblClk, WMLButtonDblClk)
VCL_MESSAGE_HANDLER(WM_KILLFOCUS, TMessage, WMKillFocus)
VCL_MESSAGE_HANDLER(WM_CANCELMODE, TMessage, WMCancelMode)
VCL_MESSAGE_HANDLER(CM_CANCELMODE, TCMCancelMode, CMCancelMode)
END_MESSAGE_MAP(TInplaceEdit)
处理这些消息。
第三步从TStringGrid的父类TCustomGrid继承你的控件,并把
TGridInplaceEdit添加为友元。
在(protected)重载如下:
void __fastcall DrawCell(int ACol, int ARow, const Windows::TRect &ARect, Grids::TGridDrawState AState);
TInplaceEdit* __fastcall CreateEditor(void);
DYNAMIC AnsiString __fastcall GetEditText(int ACol, int ARow);
DYNAMIC int __fastcall GetEditLimit(void);
DYNAMIC void __fastcall SetEditText(int ACol, int ARow, const System::AnsiString Value);
void __fastcall HideEditor(void);
在public中重载:
DYNAMIC bool __fastcall CanEditAcceptKey(char Key);
DYNAMIC bool __fastcall CanEditModify(void);
bool __fastcall CanEditShow(void);
DYNAMIC AnsiString __fastcall GetEditMask(int ACol, int ARow);
这些都是看VCL的源程序得到的灵感,时间长了比较生疏了,框架和实现方式大概就是这样了,有问题可以参考delphi的源程序。祝好运!
yuanque
2002-09-03
打赏
举报
回复
帮帮忙,分不够尽管开口嘛
yuanque
2002-09-03
打赏
举报
回复
楼上是不是指TStringGrid有一个Objects属性?能否简单举个例子,感激不尽
yuanreid
2002-09-03
打赏
举报
回复
如果不用别人的,只能自己编写这种控件,我也尝试过,TStringGrid实际已经预留了扩展的空间,他的每个单元支持用TcomboBox或CheckBox填充。感觉不是很困难,
yuanque
2002-09-03
打赏
举报
回复
当然不能用listview了,是要用表格控件。那不是一个层面的东东。
vixkywx
2002-09-03
打赏
举报
回复
用listview吧
yuanque
2002-09-03
打赏
举报
回复
因为工程的需要不能用别人的控件,有源码吗,请指点一两个网站,谢谢:)
JamesJiang
2002-09-03
打赏
举报
回复
去找几个增强型的Grid控件,网上大把。
新手
求助
RBF神经网络数据预测问题-数据.xls
新手
求助
RBF神经网络数据预测问题-数据.xls 本程序用前六个数据预测下一数据,前200组数据用于训练,用后80组数据进行预测,可预测结果为一个值,请大家指教: 源程序为: clc clear close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %每五个数据整合, x=xlsread; n=length m=5; sum=0; j=1; x1=zeros); for k=1:m:n for i=k: sum=sum x; end x1=sum; j=j 1; sum=0; end j t=1:; figure plot;%,'d-m' hold on;
grid
on title; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %归一化处理 [x2,mint,maxt] = premnmx figure plot;%,'d-m' hold on;
grid
on title; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %输入数据 for k=1:1:200 p_train=[x2 x2 x2 x2 x2 x2]; 5*6 t_train=x2; 5*1 end p_train=p_train'; %6*195 t_train=t_train'; %1*195 for z=1:1:81 p_test=[x2 x2 x2 x2 x2 x2]; t_test=x2; end p_test=p_test'; t_test=t_test'; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %建立 RBF 网络 goal = 0.0001; % 训练误差的平方和 spread = 0.01; % 此值越大,需要的神经元就越少 MN = size; % 最大神经元数 DF = 1; % 显示间隔 net = newrb; data_out=sim p_mse=mse figure plot hold on plot title; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %预测并作图 y=sim y_mse=mse figure plot; hold on; plot title; legend;
新手
求助
RBF神经网络数据预测问题-历史开奖数据.xlsx
新手
求助
RBF神经网络数据预测问题-历史开奖数据.xlsx 本程序用前六个数据预测下一数据,前200组数据用于训练,用后80组数据进行预测,可预测结果为一个值,请大家指教: 源程序为: clc clear close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %每五个数据整合, x=xlsread; n=length m=5; sum=0; j=1; x1=zeros); for k=1:m:n for i=k: sum=sum x; end x1=sum; j=j 1; sum=0; end j t=1:; figure plot;%,'d-m' hold on;
grid
on title; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %归一化处理 [x2,mint,maxt] = premnmx figure plot;%,'d-m' hold on;
grid
on title; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %输入数据 for k=1:1:200 p_train=[x2 x2 x2 x2 x2 x2]; 5*6 t_train=x2; 5*1 end p_train=p_train'; %6*195 t_train=t_train'; %1*195 for z=1:1:81 p_test=[x2 x2 x2 x2 x2 x2]; t_test=x2; end p_test=p_test'; t_test=t_test'; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %建立 RBF 网络 goal = 0.0001; % 训练误差的平方和 spread = 0.01; % 此值越大,需要的神经元就越少 MN = size; % 最大神经元数 DF = 1; % 显示间隔 net = newrb; data_out=sim p_mse=mse figure plot hold on plot title; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %预测并作图 y=sim y_mse=mse figure plot; hold on; plot title; legend;
求助
反应谱滤波程序-11.doc
求助
反应谱滤波程序-11.doc 本人有一组数据反应谱数值为【26.51 26.75 26.93 27.11 27.44 27.69 28.33 28.38 28.19 29.08 30.17 31.55 33.86 33.81 33.27 37.16 39.38 39.41 48.92 51.26 55.19 51.96 50.24 63.5 76.3 64.35 54.85 60.12 65.1 46.62 44.96 54.73 69.64 79.94 70.08 65.79 66.41 71.95 75.27 72.8 67.53 49.4 49.44 38.8 27.92 29.89 35.88 33.15 26.76 21.8 18.5 11.29 9.15 11.47 12.38 10.3 8.88 6.21 5.59 4.73 4.65 5.79 4.63 4.23 3.99 4.86 4.74 4.23 5.5 6.1 4.84 4.49 4.09 3.86 4.14 4.76 5.06 4.66 4.32 3.95 3.24 2.58 2.12 1.7 1.32 1.05 0.78 0.65 0.54 0.46 0.43 】 周期为(0.04~15)s,如下: T=4.000000E-02; T=4.200000E-02;T=4.400000E-02; T=4.600000E-02; T=4.800000E-02; T=5.000000E-02; T=5.500000E-02; T=6.000000E-02; T=6.500000E-02; T=7.000000E-02; T=7.500000E-02; T=8.000000E-02; T=8.500000E-02; T=9.000000E-02; T=9.500000E-02; T=1.000000E-01; T=1.100000E-01; T=1.200000E-01;T=1.300000E-01;T=1.400000E-01; T=1.500000E-01; T=1.600000E-01;T=1.700000E-01;T=1.800000E-01; T=1.900000E-01; T=2.000000E-01;T=2.200000E-01;T=2.400000E-01; T=2.600000E-01; T=2.800000E-01; T=3.000000E-01;T=3.200000E-01; T=3.400000E-01;T=3.600000E-01; T=3.800000E-01; T=4.000000E-01;T=4.200000E-01; T=4.400000E-01;T=4.600000E-01; T=4.800000E-01; T=5.000000E-01;T=5.500000E-01; T=6.000000E-01;T=6.500000E-01; T=7.000000E-01; T=7.500000E-01; T=8.000000E-01;T=8.500000E-01; T=9.000000E-01; T=9.500000E-01; T= 1.000000; T= 1.100000;T= 1.200000;T= 1.300000;T= 1.400000; T= 1.500000; T= 1.600000;T= 1.700000; T= 1.800000; T= 1.900000;T= 2.000000; T= 2.200000; T= 2.400000; T= 2.600000;T= 2.800000;T= 3.000000;T= 3.200000; T= 3.400000; T= 3.600000;T= 3.800000;T= 4.000000;T= 4.200000;T= 4.400000; T= 4.600000; T= 4.800000; T= 5.000000; T= 5.500000; T= 6.000000;T= 6.500000;T= 7.000000; T= 7.500000;T= 8.000000;T= 8.500000;T= 9.000000;T= 9.500000;T=10.000000; T=11.000000;T=12.000000; T=13.000000; T=14.000000; T=15.000000; 那么如何利用中值滤波法求出滤波后的反应谱值,画出曲线,求高手指点一下啊 本人用了一维数字滤波器,但感觉还是有点问题,如下: clear clc A=load; B=A; data=B'; [b,a]=ellip; y=filter T=4.000000E-02; T=4.200000E-02;T=4.400000E-02; T=4.600000E-02; T=4.800000E-02; T=5.000000E-02; T=5.500000E-02; T=6.000000E-02; T=6.500000E-02; T=7.000000E-02; T=7.500000E-02; T=8.000000E-02; T=8.500000E-02; T=9.000000E-02; T=9.500000E-02; T=1.000000E-01; T=1.100000E-01; T=1.200000E-01;T=1.300000E-01;T=1.400000E-01; T=1.500000E-01; T=1.600000E-01;T=1.700000E-01;T=1.800000E-01; T=1.900000E-01; T=2.000000E-01;T=2.200000E-01;T=2.400000E-01; T=2.600000E-01; T=2.800000E-01; T=3.000000E-01;T=3.200000E-01; T=3.400000E-01;T=3.600000E-01; T=3.800000E-01; T=4.000000E-01;T=4.200000E-01; T=4.400000E-01;T=4.600000E-01; T=4.800000E-01; T=5.000000E-01;T=5.500000E-01; T=6.000000E-01;T=6.500000E-01; T=7.000000E-01; T=7.500000E-01; T=8.000000E-01;T=8.500000E-01; T=9.000000E-01; T=9.500000E-01; T= 1.000000; T= 1.100000;T= 1.200000;T= 1.300000;T= 1.400000; T= 1.500000; T= 1.600000;T= 1.700000; T= 1.800000; T= 1.900000;T= 2.000000; T= 2.200000; T= 2.400000; T= 2.600000;T= 2.800000;T= 3.000000;T= 3.200000; T= 3.400000; T= 3.600000;T= 3.800000;T= 4.000000;T= 4.200000;T= 4.400000; T= 4.600000; T= 4.800000; T= 5.000000; T= 5.500000; T= 6.000000;T= 6.500000;T= 7.000000; T= 7.500000;T= 8.000000;T= 8.500000;T= 9.000000;T= 9.500000;T=10.000000; T=11.000000;T=12.000000; T=13.000000; T=14.000000; T=15.000000; t=T'; plot%%%%%%%一类场地水平 hold on plot%%%%%%%一类场地水平 xlabel') ylabel')
grid
waterfallFlow.rar
哪个大神帮我看看流式布局问题啊
未完成的网页有问题
上面的图片调整一个其他的也跟着动,不知道是为什么,
求助
?
C++ Builder
13,873
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章