澳门码开奖号码查询—应用汇总▲vip玩家的高端局

135hk特区总站资料全年资点王中王

要在PyQt中实现鼠标按下位置生成按钮的功能,可以创建一个自定义的QWidget或QMainWindow,并在其上捕获鼠标事件。以下是一个示例代码,演示了如何在鼠标按下位置生成一个按钮:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.setWindowTitle("Mouse Click to Create Button")
        self.setGeometry(100, 100, 600, 400)

        self.button_counter = 1
        self.buttons = []

        self.mousePressEvent = self.on_mouse_click

    def on_mouse_click(self, event):
        if event.button() == 1:  # Left mouse button
            button = QPushButton(f"Button {self.button_counter}", self)
            button.setGeometry(event.x(), event.y(), 100, 30)
            button.clicked.connect(lambda _, btn=button: self.on_button_click(btn))
            self.buttons.append(button)
            self.button_counter += 1

    def on_button_click(self, button):
        print(f"Button&香港二四六天下彩票 nbsp;{button.text()} clicked!")

if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())

在这个示例中,创建了一个自定义的QMainWindow子类,并重写了其方法来捕获鼠标点击事件。当鼠标左键点击时,会在点击的位置生成一个新的QPushButton,并连接其点击事件到方法。这个方法在按钮被点击时会输出相应的信息。

运行代码后,可以通过点击鼠标左键来在窗口中生成按钮,并且每个按钮的位置与你点击的位置相对应。这只是一个基本示例,你可以根据需要进行扩展和定制。