Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

uihyperlink

创建超链接组件

说明

hlink = uihyperlink 在新图窗窗口中创建一个超链接组件,并返回 Hyperlink 对象。该链接的默认大小为 70×22 像素,默认文本为 'Hyperlink'。MATLAB® 调用 uifigure 函数来创建图窗。

示例

hlink = uihyperlink(parent) 在指定的父容器中创建超链接。父容器可以是使用 uifigure 函数创建的图窗或其子容器之一。

示例

hlink = uihyperlink(___,Name,Value) 使用一个或多个名称-值参数指定超链接属性。例如,您可以使用 TextURL 名称-值参数指定超链接的显示文本和 URL。可以将此选项与前面语法中的任何输入参数组合一起使用。

示例

全部折叠

创建一个超链接组件。将显示文本更改为 'MathWorks',并将其设置为指向 MathWorks® 主页的链接。

fig = uifigure;
hlink = uihyperlink(fig);
hlink.Text = 'MathWorks';
hlink.URL = 'https://www.mathworks.com/';

当 App 用户点击该链接时,MathWorks 主页将在新浏览器选项卡中打开。

创建一个默认超链接组件。

fig = uifigure;
hlink = uihyperlink(fig);

将 URL 更改为指向 MathWorks 主页的链接。添加一个工具提示,它在 App 用户将指针悬停在超链接上时会显示该 URL。

hlink.URL = 'https://www.mathworks.com';
hlink.Tooltip = hlink.URL;

创建一个默认超链接。

fig = uifigure;
hlink = uihyperlink(fig);

更改链接文本和 URL。

hlink.Text = 'MathWorks home page';
hlink.URL = 'https://www.mathworks.com/'

链接文本被裁剪,因为当前大小对新文本来说太小。

通过获取 Position 属性值的第三和第四个元素可以确定当前链接大小。

size = hlink.Position(3:4)
size =

    70    22

更改其大小以容纳新文本。

hlink.Position(3:4) = [150 22];

要使链接在被点击时在 App 用户系统上打开一个文件,请使用 file:/// URL 方案。

使用 publish 从示例程序文件创建一个 HTML 文件。首先,获取程序文件的路径。然后,将程序文件复制到当前文件夹,以便代码可以在发布过程中运行。

program = fullfile(matlabroot,'help','techdoc', ...
          'matlab_env','examples','fourier_demo2.m');
copyfile(program);
htmlFile = publish('fourier_demo2.m');

创建一个超链接组件。使用 file:/// URL 方案以使 MATLAB 能够打开文件。

fig = uifigure;
hlink = uihyperlink(fig);
hlink.URL = ['file:///' htmlFile];

点击超链接会打开文件,以便您在系统浏览器中进行查看。

要使链接在被点击时发送电子邮件,请使用 mailto: URL 方案。

创建一个默认超链接组件。

fig = uifigure;
hlink = uihyperlink(fig);

要运行此示例,请将 email 的值替换为有效的电子邮件地址。

email = 'myaddress@provider.ext';
hlink.URL = ['mailto:' email];

当 App 用户点击该链接时,默认邮件客户端会打开一封新电子邮件,其中的目的地字段预先填充了 email

创建一个具有自定义效果的超链接:它创建一个图,并在 App 用户点击它时打开一个 URL。为此,创建一组 UI 坐标区以及一个用于在这些坐标区中创建绘图的 HyperlinkClickedFcn 回调。

在您的 MATLAB 路径中创建名为 hyperlinkPlot.m 的文件,其中包含以下代码。以下代码将创建一个包含一个超链接和一组 UI 坐标区的窗口。当 App 用户点击该链接时,首先该 App 用户的浏览器会加载 MATLAB 产品页,然后 HyperlinkClickedFcn 回调会绘制一些数据。

function hyperlinkPlot
% Create a figure window and UI axes
fig = uifigure;
ax = uiaxes(fig);

% Create a hyperlink
hlink = uihyperlink(fig,...
    'Position',[200 350 70 22], ...
    'Text','MATLAB', ...
    'URL','https://www.mathworks.com/products/matlab.html', ...
    'HyperlinkClickedFcn',@(hlink,event) plotHyperlinkClicked(hlink,ax));
end

% Create the function for the HyperlinkClickedFcn callback
function plotHyperlinkClicked(hlink, ax)
    L = 160*membrane(1,100);
    s = surf(ax,L);
    s.EdgeColor = 'none';
end

运行 hyperlinkPlot,然后点击链接。MATLAB 打开该 URL,然后绘制数据。

输入参数

全部折叠

父容器,指定为使用 uifigure 函数创建的 Figure 对象或其子容器之一:TabPanelButtonGroupGridLayout。如果不指定父容器,MATLAB 会调用 uifigure 函数创建新 Figure 对象充当父容器。

名称-值对组参数

指定可选的、以逗号分隔的 Name,Value 对组参数。Name 为参数名称,Value 为对应的值。Name 必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所示。

示例: uihyperlink('Text','Click me') 指定超链接显示文本 Click me

注意

此处所列的属性只是可用属性中的一部分。有关完整列表,请参阅 Hyperlink 属性

超链接显示文本,指定为字符向量、字符向量元胞数组、字符串标量、字符串数组或一维分类数组。可以使用字符向量元胞数组或字符串数组指定多行文本。

示例: 'Click here'

示例: {'Click' 'Here'}

超链接 URL,指定为字符向量或字符串标量。点击超链接时,Web 地址会在新浏览器选项卡中打开。如果用户通过 MATLAB Online™ 在浏览器中运行该 App,或将其作为 Web App 运行,新选项卡将在当前浏览器中打开。否则,新选项卡将在用户系统的默认浏览器中打开。

超链接被点击后的回调,指定为下列值之一:

  • 函数句柄。

  • 第一个元素是函数句柄的元胞数组。元胞数组中的后续元素是传递到回调函数的参数。

  • 包含有效 MATLAB 表达式的字符向量(不推荐)。MATLAB 在基础工作区计算此表达式。

当用户点击超链接打开 URL 后,将执行此回调。

此回调函数可以访问有关用户与超链接的交互的特定信息。MATLAB 将 HyperlinkClickedData 对象中的此信息作为第二个参数传递给回调函数。在 App 设计工具中,该参数名为 event。您可以使用圆点表示法查询对象属性。例如,event.Source 返回 Hyperlink 对象。HyperlinkClickedData 不可用于指定为字符向量的回调函数。

下表列出了 HyperlinkClickedData 对象的属性。

属性
EventName'HyperlinkClicked'
Source执行回调的组件

有关编写回调的详细信息,请参阅在 App 设计工具中编写回调

超链接相对于父级的位置和大小,指定为向量 [left bottom width height]。此表介绍该向量中的每个元素。

元素说明
left父容器的内部左边缘与标签的外部左边缘之间的距离
bottom父容器的内部下边缘与标签的外部下边缘之间的距离
width标签的左右外部边缘之间的距离
height标签的上下外部边缘之间的距离

Position 值相对于父容器的可绘制区域。可绘制区域是指容器边框内的区域,不包括装饰元素(如菜单栏或标题)所占的区域。

所有测量值都以像素为单位。

示例: [100 100 100 20]

另请参阅

函数

属性

在 R2021a 中推出