代码之家  ›  专栏  ›  技术社区  ›  Brian Frost

如何将超链接列添加到TcxGrid(Developer express grid)

  •  1
  • Brian Frost  · 技术社区  · 16 年前

    嗨,在Delphi我成功了(!)向TcxGrid表视图中添加显示为超链接(而不是简单字符串)的列。为此,只需编辑列的“属性”并选择“超链接”。单元格现在显示超链接样式(带下划线),但我一辈子都不知道如何:

    1. 当光标移到链接上时,使光标变为“手”。
    2. 添加单击链接时触发的事件。

    2 回复  |  直到 14 年前
        1
  •  0
  •   Edelcom    16 年前

    单击列标题,列被选中。

    转到“事件”

    属性- OnStartClick -&燃气轮机;单击url时触发此事件

    I zipped my Dephi 7 sample program and executable so you see the complete project your self (从我自己的网站下载)www.edelcom.com)

    • 运行exec
    • 输入url:www.google.com
    • 按回车键
    • 移动到链接上-手出现,点击链接,显示一条消息'点击',如果你没有点击事件,它会启动点击的网址(也许它也可以这样做,但我没有尝试过这个)
        2
  •  1
  •   Birger    16 年前

    将属性设置为超链接后,可以展开属性。将sinogleClick属性设置为True,以便通过单击激活。

    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;