Domanda

Ho notato che le finestre di dialogo modale su QT utilizzano un Qeventloop locale con ProcessEventFlags Set come "DialogExec"

eventLoop.exec(QEventLoop::DialogExec);
.

L'Assistente Qt non ha informazioni su ciò che significa questo enum.C'è un altro chiamato EventLoopExec.Qualcuno ha idea di cosa significano effettivamente e perché non sono documentati?

Grazie

È stato utile?

Soluzione

I did some poking around and this is what I found:

  • This enum is intentionally omitted from the documentation, along with several other QEventLoop::ProcessEventsFlag enum values (X11ExcludeTimers, ExcludeUserInput, WaitForMore, EventLoopExec) as there is an \omitvalue in front of each one in the comments that generate the docs.

  • There is only one place in all of Qt that actually uses it, in qeventdispatcher_mac.mm in which it appears to be some kind of mac-specific optimization according to the in-line comments

The intentional omission of these values from the docs leads me to conclude that they're for internal Qt use only, and that you shouldn't need to use them or worry about them.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top