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


von Uwe (Gast)


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 User
von Skyper (Gast)


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...

von Testbenutzer (Gast)


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,

von Uwe (Gast)


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.

von Skyper (Gast)


Lesenswert?

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

von Bernd K. (prof7bit)


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
von Uwe (Gast)


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.

von Framulestigo (Gast)


Lesenswert?

C# und Windows.Forms, ggf auf dem Raspi mit Mono.

von guest (Gast)


Lesenswert?

Framulestigo schrieb:
> ... Windows.Forms ...
oder aktueller mit WPF

von Arc N. (arc)


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)

von Walter T. (nicolas)


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.

von Alex Z. (alexander_z49)


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

von marais (Gast)


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.

von guest (Gast)


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.

von Wilfried P. (widp)


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
von Egon D. (Gast)


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.

von Uwe (Gast)


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

von Sebastian R. (sebastian_r569)


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.

von Volker S. (vloki)


Lesenswert?

Skyper schrieb:
> Zum Anzeigen von Messdaten etc. gibt es noch Qwt -->

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

von Heinz B. (Firma: Privat) (hbrill)


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

1
Declare btn1&, btn2&, Grid&, ende&
2
3
WindowTitle "Klick mich !"
4
Window 600,400
5
btn1& = Create("Button",  %HWnd, "Klick mich", 10, 10, 80, 25)
6
btn2& = Create("Button",  %HWnd, "Ende",       120,10, 80, 25)
7
Grid& = Create("GridBox", %HWnd, "Spalte 1;0;100;Spalte 2;0;100;Spalte 3;0;100", 0, 10, 50, 320, 100)
8
9
ende& = 0
10
WhileLoop 1, 5
11
   AddString(Grid&, Str$(&LOOP) + "|" + Str$(&LOOP * 2) + "|" + Str$(&LOOP * 3))
12
EndWhile
13
SetCurSel Grid&, 0  ' Auswahlbalken auf 1. Eintrag
14
15
WhileNot ende&
16
   WaitInput
17
   If Clicked(btn1&)
18
      Messagebox("Du hast mich geklickt !", "Info", 0)
19
   ElseIf Clicked(btn2&)
20
      ende& = 1
21
   ElseIf Clicked(Grid&)
22
      MessageBox("Spalte 1 : "+ GetText$(Grid&, GetCurSel(Grid&), 0) + "\nSpalte 2 : " +\
23
      GetText$(Grid&, GetCurSel(Grid&), 1) +\
24
      "\nSpalte 3 : " + GetText$(Grid&, GetCurSel(Grid&), 2), "Info", 0)
25
   EndIf
26
   Case %Key = 2 : ende& = 1 ' Schließen-Kreuz abfragen
27
EndWhile
28
29
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
von noch_ein_gast (Gast)


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...

von Purzel H. (hacky)


Lesenswert?

Meine Wahl : Delphi (Pascal)

von Marten Morten (Gast)


Lesenswert?

Warum in die Ferne schweifen? 
Beitrag "Serielle Visualisierung mit Comvisu"

von Gurgl (Gast)


Lesenswert?

LabView ist cool

von Le X. (lex_91)


Lesenswert?

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

von Bernd K. (prof7bit)


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.

von Framulestigo (Gast)


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!!!

von Gurgl (Gast)


Lesenswert?

Framulestigo schrieb:
> GUIs sind nun mal hässlich!!!

Wer hässliches tut ist hässlich!

von Dirk (Gast)


Lesenswert?

Wenn es rein Windows sein soll, dann C# + WPF.

Wenn es Crossplatform sein soll, dann Qt + Qml

von Dirk B. (dirkb2)


Lesenswert?

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

Dann das Original Tcl/Tk

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.