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

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())


http://www.kler.cn/a/578194.html

相关文章:

  • DeepSeek DeepEP学习(三)normal dispatch
  • Python - 轻量级后端框架 Flask
  • 练习题:76
  • 计算机毕业设计:高校教师网上职称申报系统
  • 宝塔的ssl文件验证域名后,会在域名解析列表中留下记录吗?
  • Win11更新系统后播放没有声音了
  • css画出带圆角平行四边形效果
  • 【redis】五种数据类型和编码方式
  • 【RK3588嵌入式图形编程】-SDL2-图像缩放和纵横比
  • html常用的文本标签以及属性
  • 数据开发0经验入职: 开发流程梳理>>调研, 需求沟通,采集,存储,ETL,测试,可视化, 项目环境
  • CUDA原子操作
  • FreeRTOS任务状态查询
  • 智慧照明奇点已至,塔能科技如何开启升维之战
  • 云创智城YunCharge 新能源二轮、四轮充电解决方案(云快充、万马爱充、中电联、OCPP1.6J等多个私有单车、汽车充电协议)之云快充协议模拟器使用手册
  • 闭包函数是什么?
  • 【实战篇】【DeepSeek 全攻略:从入门到进阶,再到高级应用】
  • leetcode-sql数据库面试题冲刺(高频SQL五十题)
  • 每日一题之团建
  • 小程序 wxml 语法 —— 36 wxml 语法 - setData() 修改数据