PYQT6 Transparent Overlay für FF7 Remake MiniMe wird keine Hotkeys fangen (Q / F1 - F9 ignoriert)Python

Python-Programme
Anonymous
 PYQT6 Transparent Overlay für FF7 Remake MiniMe wird keine Hotkeys fangen (Q / F1 - F9 ignoriert)

Post by Anonymous »

Ich versuche, ein kleines Helfer -Tool in Python (3.13) mit Pyqt6, OpenCV und MSS zu schreiben. Das Overlay zeichnet Kreise und Statustext, und ich möchte es mit Hotkeys steuern: < /p>

[*] F1 → ROI -Kreis durch Maus -Drücken setzen (Klicken Sie dann auf Mitte, dann klicken Sie auf Kante). Radius). /> < /li>
F7 → Farbe unter Cursor (HSV -Samen). /> q oder Strg+Alt+Q → Quit. /> Keine der Hotkeys (F1 - F9, q) funktioniert. Stattdessen minimiert die Überlagerung nur in den Hintergrund. erkannt. < /p>
Minimales Beispiel < /p>
from PyQt6 import QtWidgets, QtCore
import sys, keyboard

class Overlay(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.setWindowFlags(
QtCore.Qt.WindowType.FramelessWindowHint |
QtCore.Qt.WindowType.WindowStaysOnTopHint |
QtCore.Qt.WindowType.Tool
)
self.setAttribute(QtCore.Qt.WidgetAttribute.WA_TranslucentBackground, True)
self.setWindowFlag(QtCore.Qt.WindowType.WindowTransparentForInput, True)
self.setWindowFlag(QtCore.Qt.WindowType.WindowDoesNotAcceptFocus, True)

screen = QtWidgets.QApplication.primaryScreen()
self.setGeometry(screen.geometry())

def paintEvent(self, event):
painter = QtWidgets.QPainter(self)
painter.setPen(QtCore.Qt.GlobalColor.yellow)
painter.drawText(50, 50, "Overlay running - press Q to quit")
painter.end()

def on_quit():
print("Quit requested")
app.quit()

app = QtWidgets.QApplication(sys.argv)
overlay = Overlay()
overlay.showFullScreen()

# Register quit hotkeys
keyboard.add_hotkey('q', on_quit)
keyboard.add_hotkey('ctrl+alt+q', on_quit)

sys.exit(app.exec())
< /code>
Was ich erwarte < /p>

Drücken von Q oder Strg+Alt+sollte das Überlagerung schließen. Sollte ich ROI durch numerische Eingangsdialogin definieren lassen. All.

Drücken von Q oder Strg+Alt+Q minimiert nur das Overlay -Fenster, anstatt es zu schließen. />
Wie kann ich globale Hotkeys in einem Pyqt6 -Overlay wie dieses richtig erfassen? Haken) für Hotkeys?>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post