如上图。。上图是易语言里的高级表格直接带的效果。。delphi里测试了多个grid似乎都不好实现。问题如下1:鼠标点击的时候单元格出现一个黑色的单元格边框效果!
2:鼠标单击单元格的时候。。行标头和列标头字体加粗效果!
3:鼠标左键按住移动的时候。移动到哪个单元格,哪个单元格加一个边框线效果。原来单元格效果取消!
解决方案 »
- 关于Delphi的指针,@这些操作我实在搞不懂了
- access 自定义函数
- DBGridEh中BoxCheckButton的问题!高分相送!
- 帮我解决这个播放内存中的语音流的方法好吗?!亿分感激不尽!(我把帐号中所有的分都给您)
- 300分 吐血求救,一次给不够,可以给3次,组件的问题
- Fields[]、FieldValues[]、FieldByName()的区别,up有奖,分不够再加
- 我想做一个网络数据库(就是一台机器访问另一台机器,用access数据库可不可实现?)
- 如何只用sql刷选出前n条记录(ansi)?
- 救救我吧!!怎样配置调试dll的环境?
- 小妹想编个聊天程序,不知那位大虾可以给我一份源代码参考参考!
- 这么多可用分也没什么用,散分吧!
- cxGrid如何动态添加一个列,并把该列设置为有下拉框?
能否给个简单的例子。。我也有用advsg试过。。网上有下过一个例子。可是编译的时候有很多BUG通不过
hongss: 这问题提得好,实现的确有点麻烦。我想还是要从 canvas 下手,把第一个单元格直到最后一个单元格的 Rect 空间连成一片,应该可以实现。当然要先禁止自动框线。TStringGrid 其实就是在 canvas 上写写画画。要是走极端,可以全部自己写代码实现。利用 TStringGrid 省去很多麻烦,但别忘了最终还是 canvas 作业。
如果你决定用AdvStringGrid,我可以给你写个例子。
现在就在用advsg在弄呢。研究一晚上也没法很好的实现。。那个焦点单元格总是有虚线。劳烦前辈给弄个简单的例子研究学习下。
直接画的也试过。不是很理想。拉动的时候闪的厉害。所以就放弃自己画的想法了
AdvStringGrid设置ShowSelection为False,SelectionRectangle为True即可
AdvStringGrid1.Options := AdvStringGrid1.Options - [goRangeSelect];
我用的Adv是低版本,没有这个设置功能,Adv里面写死了Canvas.Pen.Width := 2;可能高版本的有设置;
要么就只能自己写OnDrawCell事件了。