2 Commits
Author SHA1 Message Date
Jokul 9b8f6367e9 fix: 切换网卡时弹窗高度跳动
接口信息区改为固定高度 60px(按最多 3 行内容计算),内容顶部对齐。
无论有无 IP 地址,区域高度恒定,弹窗整体高度不随网卡切换跳动
2026-08-08 21:23:51 +08:00
Jokul 8129730d43 fix: 无 IP 地址时接口名位置与有 IP 时保持一致
去掉接口信息区外层 Item 包装和 anchors.centerIn,直接用 ColumnLayout
内容自然撑高、顶部对齐。无论有无 IP 地址,接口名行始终在顶部同一
垂直位置,切换网卡时不再跳动
2026-08-08 21:19:48 +08:00
+5 -5
View File
@@ -134,17 +134,17 @@ Control {
// ==================== 分区1:接口信息 ==================== // ==================== 分区1:接口信息 ====================
// 三行对称结构:行1 接口名(居中),行2 IPv4 地址行,行3 IPv6 地址行 // 三行对称结构:行1 接口名(居中),行2 IPv4 地址行,行3 IPv6 地址行
// 地址行用固定宽度标签 + 地址 + 复制图标,两行结构对称不会错位 // 地址行用固定宽度标签 + 地址 + 复制图标,两行结构对称不会错位
// 外层 Item 固定高度 + 内层 ColumnLayout anchors.centerIn: // 固定区域高度(按最多 3 行:接口名 16px + IPv4 16px + IPv6 16px + 间距 8px ≈ 56px):
// 无 IP 地址时内容在区域内垂直居中,避免单行内容贴顶导致网卡名偏上 // 无论有无 IP 地址,区域高度恒定,弹窗整体高度不随网卡切换跳动;
// 内容用 anchors.top 顶部对齐,接口名行始终在顶部同一垂直位置
Item { Item {
Layout.fillWidth: true Layout.fillWidth: true
// preferredHeight 40 为无 IP 时的最小高度;有 IP/IPv6 时内容自然撑高 Layout.preferredHeight: 60
Layout.preferredHeight: Math.max(40, ifaceCol.implicitHeight)
visible: popup.ready visible: popup.ready
ColumnLayout { ColumnLayout {
id: ifaceCol id: ifaceCol
anchors.centerIn: parent anchors.top: parent.top
width: parent.width width: parent.width
spacing: 4 spacing: 4