UI扩展 - 列表菜单调整

创作者: Glanzer
已更新:2026-04-09 21:38:15
502KB

前置 MOD

使用 UI扩展 - 列表菜单调整 时将自动安装

关于此 MOD

允许在UIExtensions列表菜单中使用彩色文本。您可以使用其他支持HTML的功能,如不同的字体、字号等。文本框现在加宽了50%。我包含了宽屏(21:9)和超宽屏(32:9)显示器的版本。否



这个模组是UIExtensions中listmenu.swf文件的单文件替换模组。它允许模组作者使用HTML编码在列表中显示彩色文本、不同字体和不同字号。例如,以下是你可以实现的各种效果:




以下是来自莎草纸脚本的代码,它填充了上述列表:

categoryNames[0] = "您可以使用<font color='#00FF00' size='10'>更小</font>或<font color='#FF0000' size='22'>更大</font>的字体"
categoryNames[1] = "以下是龙语字体的示例:"
categoryNames[2] = "<font face='$DragonFont'>ABCDEFGHIJKLMNOPQRSTU</font>"
categoryNames[3] = "你甚至可以在条目中<u>给某些词加下划线</u>"
categoryNames[4] = "你可以使用<font color='#FFFF00' face='$ConsoleFont'>Courier New 字体</font>"
categoryNames[5] = "<font color='#00FFFF' face='$SkyrimBooks'>这是青色书本字体的示例</font>"


另外,我还将列表加宽了50%,以便容纳更多文本。以下是修改前后的截图对比:

     



上方“after”图像所使用的代码如下:

categoryNames[0] = "<font color='#FF0000'>红色字体的第一个示例条目,包含一个较长的列表条目</font>"
categoryNames[1] = "<font color='#00FF00'>绿色字体的第二个示例条目,带有一个长列表条目</font>"
categoryNames[2] = "<font color='#0000FF'>第三个示例条目,蓝色字体,且为较长列表条目</font>"
categoryNames[3] = "<font color='#FFFF00'>黄色字体的第四示例条目,附带较长的列表内容</font>"
categoryNames[4] = "<font color='#FF00FF'>第五个示例条目,品红色字体,长列表条目</font>"
categoryNames[5] = "<font color='#00FFFF'>第六个示例条目,使用青色字体,包含一个长列表条目</font>"




并非所有HTML标签都有效,只有其中一部分似乎能正常工作。这是SWF文件所使用的HTML处理器的限制,而非SWF文件本身的限制,因此我无法改变这一点。以下是一些确实有效的标签:

  • <font color=...> </font>(用于彩色文本)
  • <font face=...> </font>(用于不同字体)
  • <font size=...> </font>(用于不同字体大小)
  • <u> </u>(用于添加下划线)

以下是我测试过的一些无效标签:

  • <b>
  • <i>
  • <small>
  • <del>
  • <strong>
  • <big>
  • <mark>

参见下方剧透,简要教程介绍如何在脚本中创建列表菜单:

剧透:  
显示

在你的脚本头部,务必像这样导入UIExtensions:

导入UIExtensions


要创建(实例化)列表菜单,请使用如下代码(此后"MyMenuUI"将成为您操作该菜单的句柄):

uilistmenu MyMenuUI = uiextensions.GetMenu("UIListMenu") as uilistmenu


在你的Papyrus脚本中,最好创建一个字符串列表,将所需的文本复制到其中,以便之后能从这些字符串中填充列表。类似这样:

string[] MyStrings = new string[3]
MyStrings[0] = "我的第一个列表条目"
MyStrings[1] = "列表中的第二个条目"
MyStrings[2] = "这是我的第三条记录"


然后,要填充实际的列表菜单,你可以这样做:

int i = 0
当i小于3时
    MyMenuUI.AddEntryItem(MyStrings[i], -1, -1, false)
    i += 1
endwhile


以下是AddEntryItem()函数的使用方法:

int 函数 添加条目项(字符串 条目名称, 整数 父条目 = -1, 整数 条目回调 = -1, 布尔 条目有子项 = false)

然后,要显示菜单并获取用户的选择,你可以这样做:
  
MyMenuUI.OpenMenu()
int iChoice = MyMenuUI.GetResultInt()
Debug.Notification("你选择了索引 " + iChoice)

顺便说一下,MyMenuUI.GetResultInt() 和 MyMenuUI.GetResultFloat() 的区别在于:GetResultInt() 返回所选条目的索引(从零开始),而 GetResultFloat() 返回你在 AddEntryItem() 中分配的 entryCallback 值。

最后,最好在每次使用后(或下次使用前)清除菜单:

MyMenuUI.ResetMenu()





UI扩展: :必需,因为UIExtensions包含所有代码和其他必要文件,以使其任何自定义菜单(包括此菜单)正常工作。

上古卷轴5:天际 特别版 的热门 MOD

探索适用于 上古卷轴5:天际 特别版 的最佳MOD,带来新功能、升级画面,以及令人兴奋的方式来改变您的游戏体验。

2025-12-16 11:53:50

前置必备Mod

修改与Mod必备前置工具

ModOrganizerTeam2024-08-04 16:31:44

Mod Organizer(MO)是一个用于管理任意大小的Mod集合的工具。它是专门为那些喜欢尝试mods的人设计的,因此需要一种简单可靠的方法来安装和卸载它们。

天空用户界面

schlangster2017-10-04 05:03:26

界面优雅,对电脑友好,并具有许多高级功能。

非官方《上古卷轴5:天际》特别版补丁 - USSEP

Arthmoor2025-09-01 07:56:09

一款针对《上古卷轴V:天际特别版》的综合性错误修复模组。非官方天际特别版补丁(简称USSEP)的目标是最终修复《天际特别版》中所有尚未被官方修复的错误。

静态网格改进模组 - SMIM

Brumbek2018-07-05 02:28:26

这是一个旨在大幅提升《上古卷轴5:天际》中无数静态3D模型外观的大型项目。简而言之,我希望通过这个项目让天际的建筑、杂物、家具和景观更加美观。

SKSE插件的地址库

meh3212024-02-14 09:19:54

包含头文件和数据库,以便轻松实现 SKSE DLL 插件的版本独立性。

比赛菜单

expired69782024-01-27 03:38:17

角色创建菜单全面改版,新增多种自定义功能,例如多种RGBA战纹、身体彩绘、手部彩绘和脚部彩绘。(需要SKSE)

Fores Skyrim SE-FNIS SE中的新闲置

NexusModsCaretaker2020-02-19 01:47:03

Skyrim没有可能的自定义动画?错误的。FNIS行为允许添加不同类型的动画到游戏:闲置/姿势,顺序,家具,配对,杀戮,生物,等等。

使用 Xmod 解锁 上古卷轴5:天际 特别版 的全部潜力 — 今天就探索这些顶级 MOD!