当前位置: 首页 > news >正文

PySide(PyQT)的contains() 方法

        在 PySide中,contains() 方法主要用于判断点、矩形或其他区域是否包含在某个特定的矩形或区域内

1. QRect 类的 contains() 方法

功能解释

  QRect 类用于表示一个矩形区域,其 contains() 方法用于检查指定的点或者另一个矩形是否位于当前矩形内部。该方法有多个重载形式。

语法
  • contains(x: int, y: int) -> bool:检查指定的点 (x, y) 是否在矩形内部。
  • contains(point: QPoint) -> bool:检查 QPoint 对象表示的点是否在矩形内部。
  • contains(other: QRect) -> bool:检查另一个矩形 other 是否完全包含在当前矩形内部。
示例代码
import sys
from PySide6.QtCore import QRect, QPoint
from PySide6.QtWidgets import QApplication

app = QApplication(sys.argv)

# 创建一个矩形
rect = QRect(10, 10, 100, 100)

# 检查点是否在矩形内
point = QPoint(200, 200)
if rect.contains(point):
    print(f"点 {point} 在矩形 {rect} 内")
else:
    print(f"点 {point} 不在矩形 {rect} 内")

# 检查另一个矩形是否在当前矩形内
other_rect = QRect(20, 20, 50, 50)
if rect.contains(other_rect):
    print(f"矩形 {other_rect} 在矩形 {rect} 内")
else:
    print(f"矩形 {other_rect} 不在矩形 {rect} 内")

sys.exit(app.exec())

2. QRegion 类的 contains() 方法

功能解释

  QRegion 类表示一个任意形状的区域,contains() 方法用于检查指定的点、矩形或者另一个区域是否位于当前区域内部。

语法
  • contains(x: int, y: int) -> bool:检查指定的点 (x, y) 是否在区域内部。
  • contains(point: QPoint) -> bool:检查 QPoint 对象表示的点是否在区域内部。
  • contains(rect: QRect) -> bool:检查 QRect 对象表示的矩形是否完全包含在当前区域内部。
  • contains(other: QRegion) -> bool:检查另一个 QRegion 对象表示的区域是否完全包含在当前区域内部。
示例代码
import sys
from PySide6.QtCore import QRect, QPoint, QRegion
from PySide6.QtWidgets import QApplication

app = QApplication(sys.argv)

# 创建一个区域
region = QRegion(QRect(10, 10, 100, 100))

# 检查点是否在区域内
point = QPoint(20, 20)
if region.contains(point):
    print(f"点 {point} 在区域 {region} 内")
else:
    print(f"点 {point} 不在区域 {region} 内")

# 检查矩形是否在区域内
rect = QRect(20, 20, 50, 50)
if region.contains(rect):
    print(f"矩形 {rect} 在区域 {region} 内")
else:
    print(f"矩形 {rect} 不在区域 {region} 内")

sys.exit(app.exec())

相关文章:

  • javascrip网页设计案例,SuperSlide+bootstrap+html经典组合
  • Docker中GPU的使用指南
  • 论文阅读笔记——Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware
  • 【C++指南】一文总结C++类和对象
  • Primer - 自适应学习,AI学习工具
  • 从 GitHub 批量下载项目各版本的方法
  • 2025 cv2.imwrite存储带有中文路径
  • 第三章 组件(12)- 自定义组件类库
  • Vue项目实战
  • 【Android】setText调用导致的悬浮窗抖动问题
  • 天翼云Gpu主机安装Dify手册
  • 强化学习: 继续看 Q-Learning + FrozenLake, 解决更大的地图 8x8, 10x10
  • 【CUDA】Reduce归约求和(下)
  • 谈谈 HTTP 中的重定向,如何处理301和302重定向?
  • 信息安全技术
  • 国自然青年基金|基于机器学习的胃癌辅助化疗疗效预测模型建立及实证研究|基金申请·25-03-05
  • 数据类设计_图片类设计之2_无规则图类设计(前端架构基础)
  • Python教程(一):基本语法、流程控制、数据容器
  • ESP8266UDP透传
  • c++ 中的 friend 关键字
  • 美国调整对华加征关税
  • 陕西旱情实探:大型灌区农业供水有保障,大旱之年无旱象
  • 陕西河南山西等地将现“干热风”灾害,小麦产区如何防范?
  • 内塔尼亚胡:以军将在未来几天“全力进入”加沙
  • 外交部:正确认识和对待历史是检验日本能否恪守和平发展承诺的重要标准
  • 专访|导演刘江:给谍战题材注入现实主义的魂