Seite 1 von 1

Applikation in Widget laufen lassen

Verfasst: 29. April 2015 09:06
von stonecold
Hallo,

ich möcht gerne zukünftig den VLC Player in einem QWidget starten wenn möglich. Aus diesem Grund beschäftige ich mich gerade mit QX11EmbedContainer. Im Netz habe ich folgendes Beispiel gefunden, was ich nun versuche auf xeyes anzuwenden:

Code: Alles auswählen

int main(int argc, char** argv)
{
  QApplication app(argc, argv);

  QString program = "xeyes";
  QStringList arguments;

  QX11EmbedContainer* container = new QX11EmbedContainer();
  container->show();

  QProcess* process = new QProcess(container);
  arguments << QString::number(container->winId());
  process->start(program, arguments);

  int status = app.exec();
  process->close();
  return status;
}
Wenn ich das Ergebnis von QString::number(container->winId()) in der Argumentenliste übergebe, startet mein xeyes nicht mehr. Irgendwie klar, da es sich dabei nicht um einen gültigen Übergabeparameter handelt. Ich habe aber diverse Beispiele im Netz gefunden, die es für beliebige Executables genau so machen. Ohne den Übergabeparameter startet xeyes einfach als eigene Applikation außerhalb des Containers.

Was mache ich falsch?

Danke und VG

Re: Applikation in Widget laufen lassen

Verfasst: 29. April 2015 17:36
von Christian81
QX11EmbedContainer gibt es in Qt5 nicht mehr. Ich würde libvlc direkt benutzen und ein eigenes UI bauen anstatt solch einen Hack.