國(guó)內(nèi)適合個(gè)人做外貿(mào)的網(wǎng)站有哪些app001推廣平臺(tái)官網(wǎng)
控件是PySide設(shè)計(jì)好的能承載用戶輸入、輸出的小窗體,將多個(gè)控件有機(jī)整合,能形成用戶所需要的界面。而每一個(gè)控件,都有屬于自己的屬性、方法、信號(hào)、槽函數(shù)和事件(event),且控件與控件之間又有繼承關(guān)系。
GUI編程常用類
PySide GUI變成經(jīng)常用到坐標(biāo)點(diǎn)(位置)、尺寸、矩形框、頁(yè)邊距、字體、顏色、調(diào)色板、圖像、圖標(biāo)、光標(biāo)和地址(QUrl)等類。
坐標(biāo)點(diǎn)類之——QPoint
QPoint
通過(guò)整數(shù)精度,在平面上定義一個(gè)點(diǎn)。PySide的點(diǎn)和Windows窗體類似,以左上方為坐標(biāo)原點(diǎn),從左至右是x
軸方向,自上往下是y
軸方向。
QPoint官方文檔
概述
方法
def __init__()
def __reduce__()
def __repr__()
def isNull()
def manhattanLength()
def __ne__()
def __mul__()
def __imul__()
def __add__()
def __iadd__()
def __sub__()
def __isub__()
def __div__()
def operator/=()
def __eq__()
def setX()
def setY()
def toPointF()
def toTuple()
def transposed()
def x()
def y()
靜態(tài)方法
def dotProduct()
詳細(xì)描述及應(yīng)用舉例
在Python
腳本中,通過(guò)如下語(yǔ)句導(dǎo)入QPoint
:
from PySide6.QtCore import QPoint
- 構(gòu)造方法
__init__(xpos, ypos)
和__init__()
構(gòu)造方法__init__(xpos, ypos)
根據(jù)給定的x
和y
坐標(biāo)構(gòu)造一個(gè)點(diǎn),__init__()
則構(gòu)造一個(gè)坐標(biāo)為(0, 0)
“空點(diǎn)”,即坐標(biāo)原點(diǎn)。
# 帶參數(shù)構(gòu)造一個(gè)點(diǎn)point_param = QPoint(5, 6)# 默認(rèn)構(gòu)造方法,構(gòu)造一個(gè)遠(yuǎn)點(diǎn)origin = QPoint()
輸出這兩個(gè)點(diǎn),分別是:
PySide6.QtCore.QPoint(5, 6)
PySide6.QtCore.QPoint(0, 0)
__reduce__()
Python
的特殊方法,將Python
對(duì)象序列化(pickle
)時(shí),會(huì)調(diào)用這個(gè)方法,如:
p = QPoint(6, 8)print(pickle.dumps(p))
__repr__()
用于定義對(duì)象的字符串表示形式。當(dāng)你直接打印一個(gè)類的實(shí)例化對(duì)象時(shí),Python 會(huì)自動(dòng)調(diào)用該方法,以輸出對(duì)象的自我描述信息。如這里的QPoint:
p = QPoint(10, 20)print(repr(p)) # 等同于print(p)或print(p.__repr__())
- 空值判斷
isNull()
當(dāng)x
和y
坐標(biāo)均為0時(shí),返回True
,否則返回False
,如:
p = QPoint()print(p.isNull()) # Truenotnull_pt = QPoint(1, 2)print(notnull_pt.isNull()) # False
- 曼哈頓長(zhǎng)度
manhattanLength()
曼哈頓長(zhǎng)度,或者叫曼哈頓距離,x
和y
絕對(duì)值之和。
p = QPoint(12, 23)manhattan_dist = p.manhattanLength()print(manhattan_dist) # 35
- 不等
__ne__(p2)
,!=
判斷兩個(gè)點(diǎn)是否相等,p2
是一個(gè)QPoint
對(duì)象。
p1 = QPoint(2, 5)p2 = QPoint(3, 3)p3 = QPoint(2, 5)print(p1.__ne__(p2))print(p1 != p2)print(p1 != p3)
- 乘法運(yùn)算——返回一個(gè)
QPoint
副本的乘法(*
):__mul__(factor)
QPoint
乘法運(yùn)算,即*
,參數(shù)可以可以是整型int
或浮點(diǎn)型float
因子factor
。
p = QPoint(10, 20)r = p * 2print(r)s = p * 1.5print(s)
- 乘等
*=
(__imul__(factor)
)
QPoint
乘等運(yùn)算,即*=
,參數(shù)可以是整型int
或浮點(diǎn)型float
因子factor
。
p = QPoint(5, 8)p *= 2print(p)p *= 1.8print(p)
- 加法運(yùn)算
+
(__add__(p2)
)
QPoint
加法運(yùn)算。
p = QPoint(1, 2)q = QPoint(2, 3)r = p + qprint(r)
- 加等
+=
(__iadd__(p)
)
QPoint
自增運(yùn)算,舉例如下:
p = QPoint(1, 2)q = QPoint(2, 3)p += qprint(p)
- 取負(fù)和減法運(yùn)算
-
(__sub__(p)
)
取負(fù)或減法運(yùn)算:
p = QPoint(1, 1)q = QPoint(2, 0)r = p - qprint(r)
- 減等
-=
(__isub__(p)
)
減等運(yùn)算:
p = QPoint(1, 1)q = QPoint(2, 0) q -= pprint(q) # (1, -1)
- 除法
/
(__div__(divisor)
)以及/=
執(zhí)行除法運(yùn)算:
p = QPoint(10, 20)q = p / 2.0print(q) # (5, 10)q /= 2.5print(q) # (2, 4)
- 判斷兩個(gè)點(diǎn)是否相等
==
(__eq__(p2)
)
p = QPoint()q = QPoint()print(p == q) # True
- 設(shè)置
x
,y
值,setX()
和setY()
p = QPoint(2, 3)p.setX(3)print(p) # (3, 3)p.setY(6)print(p) # (3, 6)
- 轉(zhuǎn)換為
QPointF
類型toPointF()
p = QPoint(2, 8)print(p.toPointF()) # (2.0, 8.0)
- 轉(zhuǎn)換為元組
toTuple()
p = QPoint(3, 8)print(p.toTuple()) # (3, 8)
- 轉(zhuǎn)置
transposed()
QPoint
對(duì)象的x
和y
坐標(biāo)對(duì)調(diào)。
p = QPoint(3, 5)print(p.transposed()) # (5, 3)
- 獲取
x
,y
數(shù)值x()
,y()
p = QPoint(7, 8)print(p.x()) # 7print(p.y()) # 8