2017-02-01 5 views
1

Wie würde man eine Zeichenfolge in die Zwischenablage kopieren? Ich möchte QT vermeiden und leider finde ich nur Snippets für Windows.Linux/C++ Kopieren einer Zeichenfolge in die Zwischenablage

+0

Nach welchem ​​System fragen Sie? Oder genauer, welche Desktop-Umgebung? –

+0

Ich bin auf Arch/Cinnemon, aber ich möchte es offen halten – user273032

+0

Der Punkt ist, dass Sie es nicht offen halten können. Klemmbretter funktionieren auf verschiedenen Systemen unterschiedlich, und (soweit ich weiß) gibt es keine standardmäßige Möglichkeit, mit ihnen zu interagieren. –

Antwort

1

Sie könnten immer direkt mit xlib interagieren, aber so lies madness (Sprachwarnung).

Wenn Sie eine GUI-App erstellen, verwenden Sie am besten die von Ihrem GUI-Toolkit bereitgestellte Schnittstelle (z. B. QClipboard für QT). Wenn Sie eine Befehlszeilen-App erstellen, fügen Sie einfach eine Shell wie zB xsel hinzu.

Wenn Sie wirklich nur mit xlib fortfahren möchten, dann müssen Sie sich an eines erinnern: X besitzt nicht die Zwischenablage; Kunden besitzen die Zwischenablage. Ihr grundlegender Arbeitsablauf ist, XSetSelectionOwner anzurufen und dann herumzusitzen und XSelectionRequestEvent s zu behandeln, bis irgendein anderer Klient Eigentum von Ihnen nimmt.
Wenn Sie nach einem Beispiel suchen, ist die xsel-Quelle ziemlich einfach zu folgen. Danach ist die ICCCM der Ort, um zu schauen.

+0

Keine GUI, kleines Screenshot-Tool. Ich habe alles vom Ergreifen eines Bildes (mit xlib ^^), um es hochzuladen und die URL als String zu bekommen. Jetzt muss ich nur die Zeichenfolge in meine Zwischenablage kopieren – user273032

Verwandte Themen