hide 隐藏控件 公共槽


QWidget::hide() 用于明确隐藏 GUI (图形用户界面) 控件,而 QWidget::show() 用于显示 GUI 控件。

有些操作必须在 QWidget.show() 方法中进行,譬如:hide 后再次 show 控件时的颜色/图案、布局内容。

  1. 父级和子级

  2. 若 QWidget 有明确调用 hide() 隐藏自身,那么它的所有子级 QWidget 也将变得不可见。

    此时,父级 QWidget 的 isHidden() 为 True, 而子级 QWidget 的 isHidden() 都为 False (即:未被明确隐藏)。

    若父级 QWidget 有调用 show() 变为可见,那么未被明确隐藏的所有子级 QWidget 也将跟着变为可见。

    此时,父级 QWidget 的 isHidden() 为 False, 而子级 QWidget 的 isHidden() 也都为 False (即:未被明确隐藏)。

  3. isHidden 和 isVisible

  4. QWidget::isHidden() 校验控件是否被隐藏, 就是有明确调用 hide() 方法隐藏控制。

    QWidget::isVisible() 校验控件是否可见,即使 isHidden() 为 False 控件仍可能不可见。

    完全被其它窗口遮挡的 QWidget、图标化的 QWidget、在另一虚拟桌面的 QWidget,isVisible() 为 True。

    控件首次展示前 isHidden() 为 False, isVisible() 也为 False。

    控件正常展示时 isHidden() 为 False, isVisible() 为 True。

版权声明: 本文为独家原创稿件,版权归 乐数软件 ,未经许可不得转载。