mikrocontroller.net

Forum: PC-Programmierung Entwicklungsumgebung für ein UI unter Windows


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mahlzeit zusammen,

ich bin seit einiger Zeit immer mal wieder auf das Problem gestoßen das 
ich beliebige Daten von meinem µC an den PC senden wollen würde, nur 
habe ich für die Darstellung der Daten auf meinem PC noch keine 
Software.
Ich habe es bisher schon geschafft meine Daten per FTDI232 an den PC zu 
senden und kann mir diese auch mit einem beliebigen Programm z.B. Putty 
/ HTerm etc.
Auf einem Raspberry hatte ich mal zum Spaß ein wenig mit Python und 
Tkinter gespielt. Fand ich persönlich jetzt gar nicht  so schlecht.

Aber wie siehts unter Windows aus? Wie und womit entwickelt/programmiert 
ihr eure GUI?

Schön wäre etwas in Richtung Tkinter mit erstellen von Fenstern/Buttons 
etc.

Ich bin auf Eure Berichte gespannt.
Viele Grüße
Uwe

: Verschoben durch Moderator
Autor: Skyper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
C++ mit Qt - kann man unter Win und Linux kompilieren, mit etwas basteln 
auf dem Raspberry Pi
Für die grafische Oberfläche und das Schreiben des Source Codes gibt es 
den Qt Creator - auch für alle drei Betriebssysteme...

Alternative zu C++ geht Phyton mit Qt auch sehr gut...

Autor: Testbenutzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,
schau dir mal Processing an. Das ist eigentlich Arduino Style und macht 
mit Java alles was du benötigst.

Es gibt auch sehr viele Beispiele dazu...

Schönen Tag noch,

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Skyper schrieb:
> Alternative zu C++ geht Phyton mit Qt auch sehr gut...

Hui Danke für die schnelle Antwort. Genau zu meiner Programmiersprache 
hatte ich gar nichts geschrieben. Erfahrung Assembler, C und C++ sind 
vorhanden. Python selbst habe ich nur durch den Raspi ein bisschen 
reingeguckt, hat mir aber auf Anhieb auch gefallen :D Qt Creator - 
Schaue ich mir mal an.

Autor: Skyper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum Anzeigen von Messdaten etc. gibt es noch Qwt --> 
https://qwt.sourceforge.io/

Autor: Bernd K. (prof7bit)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Da Du gefragt hast was andere verwenden darf ich hier guten Gewissens 
auch mal Lazarus in den Raum werfen, das leistet mir unter Windows und 
Linux gleichermaßen seit langem sehr gute Dienste.

: Bearbeitet durch User
Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd K. schrieb:
> Da Du gefragt hast was andere verwenden darf ich hier guten Gewissens

Ja natürlich jeder soll nennen was er hier so benutzt oder auch nicht 
mehr benutzt weil er/sie vielleicht was "besseres" gefunden hat.
Ich möchte halt eigentlich nur so 2-3 Temperaturen / und Luftfeuchte 
mitloggen und vielleicht noch auf 1 oder 2 Seiten irgendwelche 
Zusatzinformationen. Primär ziel ist es für mich auch einfach erstmal 
Erfahrungen zu sammeln und auszuprobieren -> Daten von µC auf den PC und 
deren Darstellung in einem eigenem Fenster usw.

Autor: Framulestigo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
C# und Windows.Forms, ggf auf dem Raspi mit Mono.

Autor: guest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Framulestigo schrieb:
> ... Windows.Forms ...
oder aktueller mit WPF

Autor: Arc N. (arc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
guest schrieb:
> Framulestigo schrieb:
>> ... Windows.Forms ...
> oder aktueller mit WPF

oder plattformübergreifender mit AvaloniaUI (nutzt ebenso wie WPF XAML, 
läuft aber zusätzlich unter Android, Linux und macOS)

Autor: Walter T. (nicolas)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Uwe schrieb:
> Wie und womit entwickelt/programmiert
> ihr eure GUI?

Matlab. Ist nicht besonders "responsiv", aber dafür schnell 
zusammengestückelt. Da die GUIs allerdings nur für eine kurze 
Lebensdauer gedacht sind, ist es dann doch das Mittel der Wahl.

Autor: Alex Z. (alexander_z49)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hallo,

ich arbeite mit Python und QT (PyQT)und bin damit sehr zufrieden. Lässt 
sich mit dem QTDesigner ganz gut erstellen und die Programmierung 
dahinter ist dank PYthon sehr flexibel und es gibt zu fast allem eine 
Lib.

Alex

Autor: marais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich mache das mit Visual Studio und den MFC in C++. Die Anwendungen sind 
sehr kompakt, die dll kann man auch statisch linken, und die MFC 
Klassenbibliothek ist sehr dünn, also schlank. Für ein Projekt, bei dem 
es auf Portabilität nicht ankommt, halte ich MFC immer noch für eine 
gute Wahl.

Autor: guest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
marais schrieb:
> und die MFC
> Klassenbibliothek ist sehr dünn, also schlank

Naja, schlank ist was anderes ...
Aber ja, ich nutze die auch noch oft.

Autor: Wilfried P. (widp)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Ich werfe da einmal PureBasic in den Ring.

https://www.purebasic.com/german/index.php
https://www.purebasic.fr/english/index.php

Sehr gute Unterstützung und 'n freundliches Forum...

: Bearbeitet durch User
Autor: Egon D. (egon_d)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe schrieb:

> Aber wie siehts unter Windows aus? Wie und womit
> entwickelt/programmiert ihr eure GUI?
>
> Schön wäre etwas in Richtung Tkinter mit erstellen
> von Fenstern/Buttons etc.

???

Python wird ja wohl auch für Windows verfügbar sein,
und Tkinter ebenso. Warum verwendest Du es nicht
einfach?

Irgendwie kommt mir die Frage absurd vor.

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Egon D. schrieb:
> Python wird ja wohl auch für Windows verfügbar sein,
> und Tkinter ebenso. Warum verwendest Du es nicht
> einfach?

Einen schönen Guten Morgen,

okay meine Antwort war vielleicht etwas zweideutig ausgedrückt. 
Natürlich habe ich auch schon unter Windows mit Python gespielt. Ich 
wollte aber mal meine Augen auch für andere Dinge öffnen. Ich fand zum 
Beispiel beim groben überfliegen Processing und Qt ganz interessant. 
Aber ich würde natürlich gerne von positiven und negativen Erfahrungen 
gerne teilhaben sofern sie von anderen Usern verraten werden ;-).

Sorry falls das etwas falsch rüber kam =).

Viele Grüße
Uwe

Autor: Sebastian R. (sebastian_r569)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Ich bin ein Fan von Lazarus (Pascal). Gibt auch eine sehr gute 
Serial-Komponente, die das ganze heavy lifting übernimmt.

Kleine "GUIs" (Kalibrierung, Konfiguration,...) mache ich aber, wenn ich 
Platz und Rechenzeit habe, auch ganz gerne mal aufm Controller. Mit ein 
paar VT100-Steuerbefehlen lassen sich über die sellerie Schnittstelle 
auch interaktive Oberflächen basteln. Nur halt mit Tastatursteuerung und 
ASCII-Art.

Autor: Volker S. (vloki)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Skyper schrieb:
> Zum Anzeigen von Messdaten etc. gibt es noch Qwt -->

Bin irgendwann (recht früh) umgestiegen auf QCustomPlot.
https://www.qcustomplot.com/

Autor: Heinz B. (Firma: Privat) (hbrill)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da kann ich auch XProfan bzw. Freeprofan nennen.
Ist bestens geeignet für Einsteiger und Anfänger,
da kein zu großer Lernaufwand. Sehr gut für kleine
Tools bzw. Programme.

Geht ganz einfach :
-Variablen deklarieren
-Fenster + Controls erstellen
-Ereignisschleife mit WaitInput

Declare btn1&, btn2&, Grid&, ende&

WindowTitle "Klick mich !"
Window 600,400
btn1& = Create("Button",  %HWnd, "Klick mich", 10, 10, 80, 25)
btn2& = Create("Button",  %HWnd, "Ende",       120,10, 80, 25)
Grid& = Create("GridBox", %HWnd, "Spalte 1;0;100;Spalte 2;0;100;Spalte 3;0;100", 0, 10, 50, 320, 100)

ende& = 0
WhileLoop 1, 5
   AddString(Grid&, Str$(&LOOP) + "|" + Str$(&LOOP * 2) + "|" + Str$(&LOOP * 3))
EndWhile
SetCurSel Grid&, 0  ' Auswahlbalken auf 1. Eintrag

WhileNot ende&
   WaitInput
   If Clicked(btn1&)
      Messagebox("Du hast mich geklickt !", "Info", 0)
   ElseIf Clicked(btn2&)
      ende& = 1
   ElseIf Clicked(Grid&)
      MessageBox("Spalte 1 : "+ GetText$(Grid&, GetCurSel(Grid&), 0) + "\nSpalte 2 : " +\
      GetText$(Grid&, GetCurSel(Grid&), 1) +\
      "\nSpalte 3 : " + GetText$(Grid&, GetCurSel(Grid&), 2), "Info", 0)
   EndIf
   Case %Key = 2 : ende& = 1 ' Schließen-Kreuz abfragen
EndWhile

End

Da bedarf es keiner verschachtelten Eventabfrage usw. wie etwa bei
Purebasic. Auch keine Bibliotheken sind nötig. Funktionen für die
ser. Schnittstelle, Timer, Multiprozessing usw. sind natürlich
auch vorhanden.


Ich nutze es immer noch gerne für kleinere Projekte. Wo kann man
sonst noch mit einem CLS, Print und Waitkey mal schnell irgendwelche
Funktionen (oder auch API) oder sonst was auf die Schnelle ausprobieren 
?

: Bearbeitet durch User
Autor: noch_ein_gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
guest (Gast):
>marais schrieb:
>> und die MFC
>> Klassenbibliothek ist sehr dünn, also schlank
>
>Naja, schlank ist was anderes ...
>Aber ja, ich nutze die auch noch oft.

Ich verwende Win32++ und Visual Studio C++. Ist
ein MFC clone. Der Vorteil fuer mich ist er
verwendet keinerlei Bibliotheken, nur header
Dateien. Das ist wirklich schlank...

Autor: Name H. (hacky)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Meine Wahl : Delphi (Pascal)

Autor: Marten Morten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum in die Ferne schweifen? 
Beitrag "Serielle Visualisierung mit Comvisu"

Autor: Gurgl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
LabView ist cool

Autor: Le X. (lex_91)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Wieso werden Fragen nach einem GUI- oder sonstigem Framework 
grundsätzlich mit dem Wettbewerb "Wer kann die exotischte Lib nennen?" 
verwechselt?

Autor: Bernd K. (prof7bit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Le X. schrieb:
> Wieso werden Fragen nach einem GUI- oder sonstigem Framework
> grundsätzlich mit dem Wettbewerb "Wer kann die exotischte Lib nennen?"
> verwechselt?

Er hat explizit gefragt was andere verwenden, da sollte dann völlig 
wertfrei jeder antworten können was er einsetzt oder mal eingesetzt hat.

Autor: Framulestigo (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Le X. schrieb:
> Wer kann die exotischte Lib nennen?

Was ist denn da Mainstream?
Ich kenne einige Kollegas, die schwören für alles pauschal auf C++. 
Andere sagen, der Desktop ist tot, der Browser ist die einzige Zukunft.
Aber fluchen tun sie alle, wenn der Chief sagt: "Kunde x will diese 
Funktion anders bedienen".

GUIs sind nun mal hässlich!!!

Autor: Gurgl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Framulestigo schrieb:
> GUIs sind nun mal hässlich!!!

Wer hässliches tut ist hässlich!

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es rein Windows sein soll, dann C# + WPF.

Wenn es Crossplatform sein soll, dann Qt + Qml

Autor: Dirk B. (dirkb2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe schrieb:
> Schön wäre etwas in Richtung Tkinter mit erstellen von Fenstern/Buttons
> etc.

Dann das Original Tcl/Tk

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.