11.label标签,按钮,form标签

一.label标签

  <label>标签可以用来绑定文字和表单控件的关系,增大表单控件的点击范围,例如单选框选择性别男或者女,当我们鼠标移动到单选框旁边的文字时,鼠标点击并不会产生选中效果,而当我们加入label标签之后,我们点击"男","女"文字时,单选框就会被选中.具体代码编写有两种方法

<input type="radio" name="gender" id="man"> <label for="man">男</label>

  第一种为这种编写方式,type属性确定<input>标签实现什么功能,name属性进行分组,最后的id属性,用来跟<label>标签内的for属性配对,属性值要相同,然后<label>标签包裹文字内容,这样子就可以将表单控制键与文字绑定,先不管id属性是什么,记住id属性跟for属性的属性值一致就行.

<label><input type="radio" name="gender"> 女</label>

第二种方式就非常简单,直接<label>标签包裹正规<input>标签就行,不用添加额外的属性,建议用这种,方便很多.

二.按钮

  在注册时填写完信息,就可以点击按钮进行注册,就像这样

要在网页中插入按钮,使用<button>标签就可以,使用方法与<input>标签一样,标签内加type属性,属性值不同,实现的功能不同,有submit,reset,button三种,submit属性值是提交按钮,点击就可以把数据提交到后台,这是个默认功能,就是不写type属性就是默认这个,不过现在实现不了,我们现在并没有后台来给我们提交数据,按了也没反应的,reset就是重置按钮,点击后我们表单区域所填的信息,选择的选项,全部回到默认状态,button就是普通按钮,没功能,后面用来配合JavaScript使用.

<button type="submit">提交</button>
<button type="reset">重置</button>
<button type="button">普通按钮</button>

三.form标签

  <form>标签用来规划一个表单区域,把一个表单里的全部表单控件包裹到from区域统一管理

<form action="">
     用户名: <input type="text">
    <br><br>
    密码: <input type="password">
    <br><br>
    <button type="submit">提交</button>
    <button type="reset">重置</button>
    <button type="button">普通按钮</button>
</form>

<from>标签内的action属性是我们要发送数据的地址,现在先不填.

如有错误,欢迎指正

这是一段python代码,请根据这段代码基于python_opencv实现点击self.pushButton时打开已搜到的相机列表并实现鼠标点击选择打开相应相机并显示在self.label,当点击self.pushButton_2时抓取当时帧显示在self.label_2 from PyQt5 import QtCore, QtGui, QtWidgets class Ui_Form(object): def setupUi(self, Form): Form.setObjectName("Form") Form.resize(1044, 729) self.gridLayoutWidget = QtWidgets.QWidget(Form) self.gridLayoutWidget.setGeometry(QtCore.QRect(19, 9, 991, 551)) self.gridLayoutWidget.setObjectName("gridLayoutWidget") self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget) self.gridLayout.setContentsMargins(0, 0, 0, 0) self.gridLayout.setObjectName("gridLayout") self.label = QtWidgets.QLabel(self.gridLayoutWidget) font = QtGui.QFont() font.setFamily("Adobe Arabic") font.setPointSize(26) self.label.setFont(font) self.label.setStyleSheet("background-color: rgb(255, 255, 127);") self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setObjectName("label") self.gridLayout.addWidget(self.label, 0, 0, 1, 1) self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget) font = QtGui.QFont() font.setFamily("Adobe Arabic") font.setPointSize(26) self.label_2.setFont(font) self.label_2.setStyleSheet("background-color: rgb(170, 255, 255);") self.label_2.setAlignment(QtCore.Qt.AlignCenter) self.label_2.setObjectName("label_2") self.gridLayout.addWidget(self.label_2, 0, 1, 1, 1) self.pushButton = QtWidgets.QPushButton(Form) self.pushButton.setGeometry(QtCore.QRect(130, 640, 161, 51)) font = QtGui.QFont() font.setFamily("Adobe Arabic") font.setPointSize(18) self.pushButton.setFont(font) self.pushButton.setObjectName("pushButton") self.pushButton_2 = QtWidgets.QPushButton(Form) self.pushButton_2.setGeometry(QtCore.QRect(660, 640, 161, 51)) font = QtGui.QFont() font.setFamily("Adobe Arabic") font.setPointSize(18) self.pushButton_2.setFont(font) self.pushButton_2.setObjectName("pushButton_2") self.retranslateUi(Form) self.pushButton.clicked.connect(Form.Action) # type: ignore self.pushButton_2.clicked.connect(Form.UserNow) # type: ignore QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate("Form", "Form")) self.label.setText(_translate("Form", "实时图像")) self.label_2.setText(_translate("Form", "抓取图像")) self.pushButton.setText(_translate("Form", "打开相机")) self.pushButton_2.setText(_translate("Form", "抓取图像"))
05-18
这段代码实现了一个基于PyQt5的GUI界面,其中包括一个显示实时图像的标签(self.label)和一个显示抓取图像的标签(self.label_2),以及两个按钮(self.pushButton和self.pushButton_2)。根据代码,当点击self.pushButton时,应该会打开已搜索到的相机列表,并且你需要实现鼠标点击选择打开相应相机并将其显示在self.label上;当点击self.pushButton_2时,应该会抓取当时帧并将其显示在self.label_2上。 在实现上述功能时,你需要使用python_opencv库来获取相机列表、打开相机并捕获图像。同时,你需要将捕获到的图像转换为QImage格式,以便在Qt界面上显示。具体实现步骤如下: 1. 在类的构造函数中添加以下代码,用于初始化相机列表: ```python import cv2 class Ui_Form(object): def __init__(self): self.cameras = [] for i in range(10): cap = cv2.VideoCapture(i) if cap.isOpened(): self.cameras.append(cap) print(f"Camera {i} found") else: cap.release() if not self.cameras: print("No camera found") ``` 2. 在打开相机的方法中,你需要实现鼠标点击选择打开相应相机并将其显示在self.label上。具体实现代码如下: ```python def Action(self): if not self.cameras: print("No camera found") return for i, camera in enumerate(self.cameras): ret, frame = camera.read() if ret: cv2.imshow(f"Camera {i}", frame) cv2.waitKey() cv2.destroyAllWindows() ``` 3. 在抓取图像的方法中,你需要捕获图像并将其显示在self.label_2上。具体实现代码如下: ```python def UserNow(self): if not self.cameras: print("No camera found") return cap = self.cameras[0] while True: ret, frame = cap.read() if ret: height, width, channel = frame.shape bytesPerLine = 3 * width qImg = QtGui.QImage(frame.data, width, height, bytesPerLine, QtGui.QImage.Format_RGB888) pixmap = QtGui.QPixmap.fromImage(qImg) self.label_2.setPixmap(pixmap) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows() ``` 4. 在类的构造函数中添加以下代码,用于连接按钮的点击事件: ```python class Ui_Form(object): def __init__(self): # ... self.pushButton.clicked.connect(self.Action) self.pushButton_2.clicked.connect(self.UserNow) ``` 这样就可以实现点击self.pushButton时打开已搜索到的相机列表并实现鼠标点击选择打开相应相机并显示在self.label,当点击self.pushButton_2时抓取当时帧显示在self.label_2了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值