社区
Delphi
帖子详情
关于stringGrid的疑问
肥仔胧
2004-08-30 09:06:26
请问如何在stringGrid重实现打勾,也就是说,我想在其某列上实现一个Boolean型的列
类似于checkBox的功能;(非dbgrid)
...全文
164
9
打赏
收藏
关于stringGrid的疑问
请问如何在stringGrid重实现打勾,也就是说,我想在其某列上实现一个Boolean型的列 类似于checkBox的功能;(非dbgrid)
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
eagle_2
2004-08-31
打赏
举报
回复
stringgrid中嵌套一个checkbox控件不就得了,还能得到很多属性和事件呢
checkbox1.left:=stringgrid1.cellrect[].left;
checkbox1.top:=stringgrid1.cellrect[].top;
checkbox1.height:=stringgrid1.cellrect[].height;
checkbox1.width:=stringgrid1.cellrect[].width;
再在每次重绘时记得:checkbox1.caption:=stringgrid1.cells[]一下
eagle_2
2004-08-31
打赏
举报
回复
stringgrid中嵌套一个checkbox控件不就得了,还能得到很多属性和事件呢
checkbox1.left:=stringgrid1.cellrect[].left;
checkbox1.top:=stringgrid1.cellrect[].top;
checkbox1.height:=stringgrid1.cellrect[].height;
checkbox1.width:=stringgrid1.cellrect[].width;
梅青松
2004-08-30
打赏
举报
回复
用两个图片:一个打勾,一个不打勾
将图片画在stringgrid 中
在onclick事件中切换两个图片即可
肥仔胧
2004-08-30
打赏
举报
回复
应该来说说话啊
有不同的方法,大家拿来相互学习嘛
rcaicc
2004-08-30
打赏
举报
回复
学习。。。。
capoatguitar
2004-08-30
打赏
举报
回复
溜达溜达不说话
luke5678
2004-08-30
打赏
举报
回复
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids;
type
TForm1 = class(TForm)
grid: TStringGrid;
procedure FormCreate(Sender: TObject);
procedure gridDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
procedure gridClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
fcheck,fnocheck:tbitmap;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
var
i:SmallInt;
bmp:TBitmap;
begin
FCheck:= TBitmap.Create;
FNoCheck:= TBitmap.Create;
bmp:= TBitmap.create;
try
bmp.handle := LoadBitmap( 0, PChar(OBM_CHECKBOXES ));
With FNoCheck Do Begin
width := bmp.width div 4;
height := bmp.height div 3;
canvas.copyrect( canvas.cliprect, bmp.canvas, canvas.cliprect );
End;
With FCheck Do Begin
width := bmp.width div 4;
height := bmp.height div 3;
canvas.copyrect(
canvas.cliprect,
bmp.canvas,
rect( width, 0, 2*width, height ));
End;
finally
bmp.free
end;
end;
procedure TForm1.gridDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
if not (gdFixed in State) then
with TStringGrid(Sender).Canvas do
begin
brush.Color:=clWindow;
FillRect(Rect);
if Grid.Cells[ACol,ARow]='yes' then
Draw( (rect.right + rect.left - FCheck.width) div 2,
(rect.bottom + rect.top - FCheck.height) div 2,
FCheck )
else
Draw( (rect.right + rect.left - FCheck.width) div 2,
(rect.bottom + rect.top - FCheck.height) div 2,
FNoCheck );
end;
end;
procedure TForm1.gridClick(Sender: TObject);
begin
if grid.Cells[grid.col,grid.row]='yes' then
grid.Cells[grid.col,grid.row]:='no'
else
grid.Cells[grid.col,grid.row]:='yes';
end;
end.
wofan
2004-08-30
打赏
举报
回复
郁闷个啥
在COL(0)里面打勾不就得
肥仔胧
2004-08-30
打赏
举报
回复
心情极度郁闷
Delphi打印组件SailPrint
Delphi中的第三方打印控件,可以打印db
grid
eh和
string
grid
等
若有
疑问
,欢迎交流!
QQ:187106433
MSN:myleaves2008@hotmai.com
E-Mail:xixuan2001@163.com
Delphi 制作股票分时图
背景:利用Delphi开发股票分时图。版本:Delphi7正文:思路如下:新建一个panel,在其上根据股票分时数据用canvas画出分时图;遇到的问题:1 Delphi的panel不自带canvas,需要用TControlCanvas提供画布作画;2 画出的分时图闪烁,利用内存位图bitmap解决;代码如下:procedure TForm2.DrowMin(Sender: TObject; Pa...
WPF之Data
Grid
主从表实现方法
最近研究了一下Data
Grid
主从表的设计,现在分享给大家!不说废话,直接上示例代码。 1.首先定义如下几个结构 public class Model : UIView { private int m_id; private
string
m_name; private SexType m_sex; private int...
有关Delphi控件开发讨论
本论总预算1000分, 想与此道高手结识, 有能者得之请勿发表不相干言论, 分数只会分给内容最精辟正确之人; 没有具体言论者, 请勿回复; 相同意见, 只给第一个发表之人以下是可以回答的方向, 供参考1. VCL控件开发的几个主要基类TComponent、TControl、TWinControl、TGraphicControl、TCustomControl的主要功能及各类用途!?2. Comp
android拍照!一年后斩获腾讯T3,跳槽薪资翻倍_腾讯t3工资(1).docx
技术交流、职场规划、大厂内推、面试辅导、更多学习资源(大厂面试解析、实战项目源码、进阶学习笔记、最新讲解视频、学习路线大纲)看我
Delphi
5,927
社区成员
262,932
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章