Erste Lösung
Sie können die folgende Flag an die Flaggen von Ihrem Fenster fügen Sie das Fenster zu verhindern, dass durch den Benutzer der Größe verändert werden:
setWindowFlags(this->windowFlags() |= Qt::FramelessWindowHint);
Hier sind einige weitere Informationen über Window Flags.
Sekunde (hässlich) Experiment Lösung
Dies ist eine Art von einem schmutzigen Work-around ... Ich bin völlig der Tatsache bewusst, dass dies nicht sauber ist.
Ich habe dieses kleine Hauptfenster geschrieben, das den Cursor manuell ändert, wenn der Hauptfensterbereich verlassen wird.
Hinweis: Sie müssen Nebenwirkungen berücksichtigen. Möglicherweise ist für ein untergeordnetes Widget eine andere Cursorform erforderlich, die jedoch den Cursor für die vollständige Anwendung außer Kraft setzt.
Dies kann als Ausgangspunkt für die weitere Entwicklung und für einfache Anwendungen verwendet werden.
Rubrik:
class CMainWindow :
public QMainWindow
{
public:
CMainWindow(QWidget* parent = nullptr);
virtual ~CMainWindow(void);
protected:
virtual void leaveEvent(QEvent *event);
virtual void enterEvent(QEvent *event);
};
cav:
CMainWindow::CMainWindow(QWidget* parent) : QMainWindow(parent)
{
setMouseTracking(true);
}
CMainWindow::~CMainWindow(void)
{
}
void CMainWindow::leaveEvent(QEvent *event)
{
qApp->setOverrideCursor(QCursor(Qt::ArrowCursor));
QMainWindow::leaveEvent(event);
}
void CMainWindow::enterEvent(QEvent *event)
{
qApp->restoreOverrideCursor();
QMainWindow::enterEvent(event);
}
Interessante Frage. Ich bin mir nicht einmal sicher, ob das möglich ist. Ist das nicht eine Funktion des Fenstermanagers?Es könnte ** sein, dass Qt keine Kontrolle über diesen Cursor hat. Vielleicht sollten Sie Ihrer Frage weitere Tags hinzufügen. 'Fenstermanager'? Welches OS? Welchen Fenstermanager benutzen Sie? Vielleicht brauchen Sie eine andere Art von Know-how, um Ihr Problem zu lösen, dann denken Sie. – Greenflow
Nicht sicher - setzt das Fensterflag auf 'Qt :: Dialog | QT :: Window' irgendetwas tun? –
Ist dies für Ihr Hauptfenster? Welche Qt-Version verwendest du? – thuga