1

嗨,在 Delphi 中,我已经管理 (!) 将列添加到 TcxGrid 表视图,该视图显示为超链接(而不是简单的字符串)。为此,您只需编辑列的“属性”并选择“超链接”。该单元格现在显示超链接样式(带下划线),但我无法终生了解如何:

  1. 使光标在链接上时变为“手”。
  2. 添加一个在我单击链接时触发的事件。

任何人都可以帮忙吗?谢谢。

4

2 回答 2

1

将属性设置为超链接后,您可以展开属性。将 SingleClick 属性设置为 True 以一键激活。

改变光标比较困难。您必须对 mousemove 事件做出反应,并确定鼠标是否悬停在超链接列上。来自DevExpress网站:

procedure TForm1.cxGrid1DBTableView1MouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
var
  Ht: TcxCustomGridHitTest;
begin
  Ht := TcxGridSite(Sender).GridView.Viewinfo.GetHitTest(X,Y);
  If (Ht is TcxGridRecordCellHitTest) and
   (TcxGridRecordCellHitTest(Ht).Item.Properties is TcxHyperLinkEditProperties) then
    Screen.Cursor := crHandPoint
  else
    Screen.Cursor := crDefault;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if Screen.Cursor <> crDefault then
     Screen.Cursor := crDefault;
end;
于 2010-04-23T15:05:25.830 回答
0

单击列标题,该列被选中。

转到“事件”

属性 - OnStartClick-> 当你点击一个 url 时触发这个事件

在我安装了最新的 dev.express 的 delphi 7 系统上,当存在 url 时,光标变为手形。

我压缩了我的 Dephi 7 示例程序和可执行文件,以便您自己查看完整的项目 (从我自己的网站 www.edelcom.com 下载)

  • 运行执行
  • 按下底部的插入按钮
  • 输入网址:www.google.com
  • 按回车
  • 移过链接 - 手出现,点击链接,显示一条消息 'clicked' ,如果你没有点击事件,它会启动点击的 url(也许它也可以这样做,但我没有尝试过这)
于 2010-04-23T06:44:15.803 回答