Lesen von Text aus der Zwischenablage
Ich versuche zu Lesen, den text in die Zwischenablage in C# in Unity, und dann legen Sie es auf eine variable.
Habe ich diesen Artikel, aber es scheint nicht zu funktionieren in der Einheit:
https://msdn.microsoft.com/en-us/library/kz40084e(v=vs. 110).aspx
Ich will einfach nur Lesen zu können, nur-text. Keine Bilder oder so etwas. Ich fand auch ein paar andere Artikel auf dieser aber keine der code funktioniert in der Einheit.
Können Sie den code in Ihrem Unity3D C# script? Auch, Wann genau wollen Sie den Zugriff auf die Daten in der Zwischenablage?
Welchen code verwenden Sie, um auf die Daten zugreifen? Warum funktioniert das nicht?...
Ich möchte Zugriff am start, wenn das Programm lädt.
Ich war mit etwas entlang der Linien von, wenn die Zwischenablage.ContainsText (), aber 'Zwischenablage' wurde nicht erkannt.
Welche Plattform? Windows oder Mac oder alle?
Welchen code verwenden Sie, um auf die Daten zugreifen? Warum funktioniert das nicht?...
Ich möchte Zugriff am start, wenn das Programm lädt.
Ich war mit etwas entlang der Linien von, wenn die Zwischenablage.ContainsText (), aber 'Zwischenablage' wurde nicht erkannt.
Welche Plattform? Windows oder Mac oder alle?
InformationsquelleAutor Andrew | 2016-03-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Machte ich ein kurzes Beispiel zu zeigen, wie die
Clipboard
Klasse aus derSystem.Windows.Forms
namespace. Es stellt sich heraus, dass die Methode benötigt die[STAThread]
method-Attribut zu arbeiten. Ich weiß nicht, ob das möglich ist, in einem Unity3D C# Skript.Um mehr zu erfahren über das, was das Attribut verwendet wird, haben einen Blick auf diese Frage (und noch wichtiger, Ihre Antworten): Was bedeutet [STAThread] tun?
EDIT:
Ich habe ein wenig zu Graben, und es sieht aus wie Unity3D hat einen wrapper für die System-Zwischenablage. Ich habe nicht versucht es noch, aber es sieht aus wie es funktionieren sollte über verschiedene Betriebssysteme und nicht nur für Windows: GUIUtility.systemCopyBuffer
Das ist wahr. Ich fand einen link zu der Unity3D docs über
EditorGUIUtility.systemCopyBuffer
die aussieht wie es kann verwendet werden, um den Zugriff auf die Zwischenablage des Betriebssystems. Ich habe bearbeitet Sie meine Antwort für den link, aber ich habe nicht versucht es selber noch nicht.+1. EditorGUIUtility.systemCopyBuffer ist für den Unity Editor nur. GUIUtility.systemCopyBuffer ist die richtige Klasse/Methode. Aktualisieren Sie Ihre Antwort. Dies funktioniert für alle Plattform-außer Web/WebGL.
Danke, hab ich aktualisiert meine Antwort mit dem link zu den docs für
GUIUtility.systemCopyBuffer
, aber der link hat nicht viel Informationen, und ich konnte keine Beispiele. Ich werde es versuchen in die Einheit später, um zu sehen, ob / wie es funktioniert.np. Getestet habe ich es bevor ich auf Ihre Antwort. Es funktioniert. Durch die Art und Weise, EditorGUIUtility erbt von GUIUtility.
InformationsquelleAutor Lars Kristensen