Laden...

Touchscreen mit Maus und Windows Forms bedienen

Erstellt von Elias1994 vor 8 Jahren Letzter Beitrag vor 8 Jahren 4.586 Views
E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren
Touchscreen mit Maus und Windows Forms bedienen

Hallo Community,

ich möchte einen beliebigen Touchscreen über meinen PC mit der Maus steuern.
Im Forum habe ich dazu leider nichts brauchbares gefunden.

Meine Idee ist:

Ich möchte mit Windows Forms Elementen (vermutlich Buttons) verschiedene Multitouch-Gesten auslösen. Grund: Ich möchte den Touchscreen nicht mit der Hand berühren, sondern mit der PC-Maus steuern.

Also ich würde mir zum Beispiel folgende Buttons erstellen:

  • Rotate Gesture cw, Rotate Gesture ccw
  • Single Touch
  • Double Click Touch
  • Zoom In, Zoom Out
  • Wischen
    -......

und iwie muss ich ja auch die Koordinaten, Zeitdauer des Touches, ... mitteilen

Wenn ich nun am PC mit der Maus auf den entsprechenden Button klicke, soll die entsprechende Geste ausgelöst werden. ICh hoffe ihr versteht was ich meine?

Meine Fragen:

  • Ist sowas überhaupt mit Windows Forms vernünftig lösbar? Wenn ja wie gehe ich am besten vor?
  • Habt ihr eine andere Idee wie ich die Touchsteuerung in WindowsForms umsetzten könnte?
  • Wenn es nicht mit Windows Forms geht, was wäre eine smarte andere Lösung?

Liebe Grüße,
Elias

1.040 Beiträge seit 2007
vor 8 Jahren

Ähm... willst du mit dem Buttonklick quasi eine Touch-Aktion simulieren? 🤔
Sprich: Klick auf Button 1 löst die Touch-Aktion "Wischen" aus?

R
17 Beiträge seit 2015
vor 8 Jahren

Also wenn ich das richtig verstanden habe willst du eine App erstellen.
Wenn du unbedingt mit C# programmieren möchtest lad dir das neue Visual Studio 2015 runter (falls noch nicht vorhanden) und Xamarin. 😉 Hab gehört Xamarin soll aber nicht wirklich gut sein. Ich selber hab es noch nicht geteset werde es aber heute mal versuchen da ich mit Android Studio noch nicht so klar komme 😃
Wenn auch Java geht dann empfehle ich dir Android Studio oder Android SDK. 😃

MfG

Redmoon147

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

Genau. Ein Mausklick auf einen Button soll eine Touchgeste ersetzten/simulieren.

Bild:

Besser wäre es natürlich wenn man die aktuelle Displayausgabe des Touchscreens 1:1 auf dem PC darstellen könnte (z.B: mit einem Framegrabber) und dann auch vom PC aus bedienen könnte.
Aber da fehlt mir komplett der Ansatz. Deshalb die Idee mit den Buttons.

16.834 Beiträge seit 2008
vor 8 Jahren

Hab gehört Xamarin soll aber nicht wirklich gut sein.

Bin zwar kein Xamarin Entwickler aber diese pauschale Aussage ist einfach nur Käse.

Einfach mal kurz den Beitrag von Amanda Silver ab 28:35 auf der Connect 2015 anschauen...

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

Hallo,

ich habe VS 2015 und möchte das auf jeden Fall mit C# umsetzten.
Eigentlich möchte ich keine Android App erstellen. Das ganze soll ja auf dem PC laufen.
Also eigentlich möchte ich nur ein Projekt erstellen mit Buttons, die meine Touch-Gesten ersetzten.
Das Projekt wird dann in ein NET.Framework eingebettet.

1.040 Beiträge seit 2007
vor 8 Jahren

@Redmoon: Passt nicht wirklich zum Thema. 😉

@Elias1994: Für Bildanhänge nutze bitte die Dateianhang-Funktion im Beitrag. 🙂

Mir ist trotz der Antwort noch nicht ganz klar, was du vor hast.

Genau. Ein Mausklick auf einen Button soll eine Touchgeste ersetzten/simulieren.

Du kannst hinter den Button eine beliebige Aktion packen - da sind dir keine Grenzen gesetzt.

Besser wäre es natürlich wenn man die aktuelle Displayausgabe des Touchscreens 1:1 auf dem PC darstellen könnte (z.B: mit einem Framegrabber) und dann auch vom PC aus bedienen könnte.

Reden wir von Touchmonitoren an PCs bzw. von Notebooks mit Touchdisplay?

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

Mir ist trotz der Antwort noch nicht ganz klar, was du vor hast.

Also ich habe meinen PC und ich programmiere mit C# folgende Forms (s.Bildanhang)
Nur wie kann ich in C# Touchsignale schicken, bzw. wie sehen die aus?

Der Toucscreen liegt iwo neben meinem PC. Die Signale könnte ich ja über eine serielle Schnittstelle übertragen (USB).

Oder ist mein Ansatz zu komplex oder gar nicht umsetztbar?

1.040 Beiträge seit 2007
vor 8 Jahren

Ist der Touchscreen ein stinknormaler Monitor?
Oder ein Tablet?
Oder...?

Mir fehlt da grade die technische Verbindung... 🤔

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

Ist der Touchscreen ein stinknormaler Monitor?
Oder ein Tablet?
Oder...?

Mir fehlt da grade die technische Verbindung...

Nein, nicht nur ein Monitor. Ja so etwas wie ein Tablet.
Man kann den Touchscreen (von mir aus auch Tablet) auch ganz normal mit der Hand bedienen.
Aber das möchte ich ja nicht. Ich möchte den Touchscreen mit Formelementen am PC bedienen über Mausklicks auf Buttons.
Und deshalb brauch ich ja iwie die Befehle für die Touchsignale. Da ich die Touchsignale ja selber generieren muss. Also muss ja hinter jedem Button der Befehl für die entsprechende Geste stehen.

klarer geworden?

1.040 Beiträge seit 2007
vor 8 Jahren

Was für ein Betriebssystem läuft denn auf dem Touchscreen/Tablet?
Davon hängt sehr wahrscheinlich ab, ob das überhaupt geht und wenn ja, welche Befehle du schicken musst.

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

Was für ein Betriebssystem läuft denn auf dem Touchscreen/Tablet?
Davon hängt sehr wahrscheinlich ab, ob das überhaupt geht und wenn ja, welche Befehle du schicken musst.

Plattform des Touchscreen ist QNX. Auf dem Pc habe ich Windwos 7

16.834 Beiträge seit 2008
vor 8 Jahren

Korrigier mich, aber auf QNX läuft doch gar kein .NET!?

5.658 Beiträge seit 2006
vor 8 Jahren

Hi Elias1994,

verstehe ich das richtig: Du willst eine Windows-Anwendung auf einem PC laufen lassen und über ein Blackberry steuern?

Christian

Weeks of programming can save you hours of planning

1.040 Beiträge seit 2007
vor 8 Jahren

OK, also mit C# hat dein Problem erstmal weniger zu tun.

Du solltest einmal googeln, ob es für QNX eine Schnittstelle gibt, die du mit C# ansprechen kannst.
Evtl. bringt dir das etwas (ohne Gewähr):
MonoBerry / auf GitHub
Ansonsten gibt es auf der QNX-Webseite auch einen Entwicklerbereich.

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

verstehe ich das richtig: Du willst eine Windows-Anwendung auf einem PC laufen lassen und über ein Blackberry steuern?

Nein genau andersrum. Über die Windows Form Elemente (Buttons) möchte ich den Touchscreen steuern. Wobei die Buttons auf dem PC mit der Maus betätigt werden.

16.834 Beiträge seit 2008
vor 8 Jahren

Du willst also auf dem PC einen Button drücken und dann soll auf dem Touchscreen des Tablets etwas ausgeführt werden?
Und wie sind die verbunden?

1.040 Beiträge seit 2007
vor 8 Jahren

@Elias:
Bitte formuliere die "ich möchte einen Touchscreen steuern" anders. Ein Touchscreen kann alles mögliche sein. So wie es aussieht, möchtest du speziell ein BlackBerry steuern.

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

Bitte formuliere die "ich möchte einen Touchscreen steuern" anders. Ein Touchscreen kann alles mögliche sein. So wie es aussieht, möchtest du speziell ein BlackBerry steuern.

Ja so ähnlich. Konkret geht es um den Touchscreen aus einem Auto, der ja von der HeadUnit gesteuert wird. Vielleicht hilft das ja weiter...

Hinweis von MrSparkle vor 8 Jahren

Solange du nicht genauer erklärst, was du eigentlich vor hast, wirst du auch keine hilfreiche Antwort bekommen.

16.834 Beiträge seit 2008
vor 8 Jahren

Ich glaub bisher hat keiner verstanden, wie das Steuern funktionieren soll. Gibts nen Kabel, gibts nen Roboter, wer übernimmt die Ausführung auf dem Gerät (denn auf dem Gerät läuft offensichtlich kein .NET)....

E
Elias1994 Themenstarter:in
54 Beiträge seit 2015
vor 8 Jahren

Ich glaub bisher hat keiner verstanden, wie das Steuern funktionieren soll. Gibts nen Kabel, gibts nen Roboter, wer übernimmt die Ausführung auf dem Gerät (denn auf dem Gerät läuft offensichtlich kein .NET)....

Der Touchscreen liegt nur rum und soll nicht direkt bedient werden. Der Mensch sitzt an einem PC (das ist nicht der Touchscreen und der Bildschirm des PCs ist nicht touchfähig). Der Touchscreen liegt einfach i.wo neben dem PC. Verbinden würde ich PC und Touchscreen vllt iwie seriell um Daten zu übertargen. Zur Steuerung: Der Mensch benutzt die PC Maus und drückt auf die Buttons seiner Windowsforms. Dadurch sollen entsprechende Events ausgelöst werden, so dass die entsprechenden Signale an den Touchscreen übertragen werden und dadurch dann ein Touch/Geste ausgelöst wird.

16.834 Beiträge seit 2008
vor 8 Jahren

Genau: und wie stellst Du Dir vor, dass die Signale am Touchscreen ankommen?
Du brauchst ja irgendeine Gegenstelle am Touchscreen.

Bin gespannt, wie das ohne entsprechende Applikation auf dem Touchscreen funktionieren soll.

P
1.090 Beiträge seit 2011
vor 8 Jahren

Klingt für mich nach Remote zugriff.
Google sagt, das das geht.
QNX:Dittoing remote QNX Photon sessions

(Hoffe ist, das richtige QNX, ansonsten mal googlen)

Sollte man mal gelesen haben:

Clean Code Developer
Entwurfsmuster
Anti-Pattern

1.040 Beiträge seit 2007
vor 8 Jahren

@Elias:
Wie schon erwähnt, kommt es darauf an, was für ein Betriebssystem auf dem Gerät läuft. Es gibt keine allgemeinen C#-Befehle für "Touchscreens" (Touchscreen ist nach wie vor ein unglücklich gewählter Begriff, weil dahinter ja immer ein Gerät mit einem Betriebssystem steht).
Wenn das entsprechende Betriebssystem (Android, iOS, QNX, was auch immer) eine Schnittstelle bietet, die mit C# angesprochen werden kann, dann kann eben diese genutzt werden.

Die C#-Seite mit den Buttons und den entsprechenden Eventhandlern sollte jedenfalls keine große Hürde darstellen.

A
764 Beiträge seit 2007
vor 8 Jahren

Plattform des Touchscreen ist QNX.

Hallo Elias1994,

da hast du dir an sich ja ein schönes Projekt ausgesucht. Angesichts deiner Antworten vermute ich aber, dass du keinen Schimmer davon hast, was du tust. Von daher sehr ambitioniert. Das soll dich aber nicht davon abhalten, das fortzuführen. Mit genügend interesse und eigeninitiative ist das schaffbar.

Ich vermute, dass das Gerät einen Netzwerkanschluss hat (ansonsten doch USB). Stimmt das?
Ein Lösungsansatz wäre, eine Anwendung auf dem Gerät zu entwickeln, die die Touchscreen-Gesten ausführt und über das Netzwerk (oder USB) Befehle entgegen nimmt.

Auf jeden Fall müsstest du für dein Projekt herausfinden, wie du Software für dein Tablet entwickelst.

Gruß, Jochen