Früher war ich ein begeisterter Benutzer von Turbo-C. Damit war rasch was gemacht. Ein paar Eingaben abgefragt, etwas graphisch dargestellt. Rasch übersetzt und das Ergebnis ausprobiert und weiteroptimiert. Visual C++ schien im Vergleich dazu extrem sperrig. Visual Basic empfand ich genial, was das Erstellen der Oberfläche anbelangte. Die Sprache selbst fand ich grauslich. Wenn es da eine C-ähnliche Sprache gegeben hätte . . . Etwas ähnlich einfaches von der Bedienung wie Turbo C erweitert um die graphische Möglichkeiten von Visual Basic suche ich. Gibts da was? Wie kann man denn rasch ohne großen Lernaufwand eine Oberfläche zurechtzuzimmern? Ist Gambas für Bedienoberflächen was Brauchbares? Matthias
:
Verschoben durch Admin
Matthias W. schrieb: > Etwas ähnlich einfaches von der Bedienung wie Turbo C > erweitert um die graphische Möglichkeiten von > Visual Basic suche ich. Gibts da was? Borland C++-Builder ? :-)
Floh schrieb: > Borland C++-Builder ? :-) Ist das wirklich so gut, daß es sich lohnt als privater Anwender so viel Geld auszugeben? Im Internet fand ich: "This site is dedicated to Borland C++ Builder, the Visual Component Library, and those of us who have come to love it, even to think that it is the best thing since the Sneakers bar. Here, we provide lessons, guides, and links on how to take advantage of this finely defined programming environment." Das hört sich ja gut an. Matthias
Matthias W. schrieb: > Ist das wirklich so gut, daß es sich lohnt > als privater Anwender so viel Geld auszugeben? nein, ist es meiner Meinung nach nicht. Hab nur mal in der Schule damit gearbeitet, daher ist es mir eingefallen ("C++ for Kids"). :-)
Luk4s K. schrieb: > Glade ist ziemlich genau das was du suchst. hört sich interessant an. http://de.wikipedia.org/wiki/Glade unabhängig von der verwendeten Programmiersprache. Demnach passt im Prinzip auch der GCC dazu. Matthias
Floh schrieb: > nein, ist es meiner Meinung nach nicht. Hab nur mal in der Schule damit > gearbeitet, daher ist es mir eingefallen ("C++ for Kids"). wenns gut ist machts auch Spaß. Das ist ein wichtiger Punkt bei der Arbeit. Hat mal jemand Gambas probiert? Matthias
Matthias W. schrieb: > dito schrieb: >> C# > da weiß ich leider wenig darüber. > Ist das eher MS-lastig? ja, ist halt von MS. Aber damit ist es sehr einfach ein GUI zu schreiben. Und es gibt kostenlose entwicklungsumgebungen.
Peter schrieb: > ja, ist halt von MS. Aber damit ist es sehr einfach ein GUI zu > schreiben. Und es gibt kostenlose entwicklungsumgebungen. Danke Peter ! Wenn es irgend geht würde ich lieber OpenSource nehmen. Wenn C# jedoch Klassen besser ist muss das überlegt werden. Matthias
Matthias W. schrieb: > Peter schrieb: >> ja, ist halt von MS. Aber damit ist es sehr einfach ein GUI zu >> schreiben. Und es gibt kostenlose entwicklungsumgebungen. > > Danke Peter ! > > Wenn es irgend geht würde ich lieber OpenSource > nehmen. Wenn C# jedoch Klassen besser ist muss > das überlegt werden. > > Matthias C# ist eine Programmiersprache. Die alleine hilft dir erstmal nicht viel, wenn du GUIs bauen willst. Wenn du eine offene C#-Implementierung mit portiertem Windows-Forms-Framework und anderen Teilen von .Net haben willst, schau mal nach Mono. Das läuft dann auch unter OS X und Linux. Entwicklungsumgebung dafür ist zB MonoDevelop. Wenn du eine tolle funktionierende Entwicklungsumgebung haben willst, ohne viel drüber nachdenken zu müssen: MS Visual Studio 2010 für C# in der Express Version kostet nichts und ist für kommerzielle Anwendungen ausdrücklich zugelassen. C# als Sprache wurde zwar von Microsoft getrieben, ist trotzdem ein Standard. Und die Sprache ist in der aktuellsten Version wirklich sehr angenehm.
Matthias W. schrieb: > enn C# jedoch Klassen besser ist muss > das überlegt werden. Besser als was? Klar kann man auch java nehmen aber das ist auch nicht wirklich opensource.
Wenn nur C# bzw. .Net und Java zur Auswahl stünden, würde ich C# vorziehen. Die zur Verfügung gestellten Klassen sind einfach besser organisiert. Außerdem hat die Sprache auch noch ein paar Features, die ich bei Java vermisse.
>C# als Sprache wurde zwar von Microsoft getrieben, ist trotzdem ein >Standard. C# ... Standard ... hmmm ... ach ja, da war doch so eine seltsame Abstimmung ... auf C# steht wohl "Standard" drauf. Drin ist IMHO jedoch Microsoft pur. Und Mono? Na ja, so lange Microsoft stillhält, funktioniert das, aber wehe wenn sie losgelassen! C# ist das was es ist: der Versuch Microsofts, Java mit einem leicht veränderten Nachbau das Wasser abzugraben. Geschafft haben sie es nicht. Ist C# nicht inzwischen deutlich aus dem Blickfeld der Entwickler gerückt?
Ach ja, wenn Du wirklich schnell zu Ergebnissen kommen willst, nimm Java mit Swing. Sehr angenehme Sache. Als Layout Manager unbedingt MigLayout verwenden!
>Wenn C# jedoch Klassen besser ist muss >das überlegt werden. Ist es natürlich nicht! Ist halt von Microsoft.
High Performer schrieb: > Ach ja, wenn Du wirklich schnell zu Ergebnissen kommen willst, nimm Java > mit Swing. Sehr angenehme Sache. Aber nur wenn du eine hässliche und langsame GUI haben willst die noch langsamer wird wann man über Terminalserver arbeitet und dafür mindestens 50Mb ram braucht. (eventuell ist es aktuell nicht mehr so schlimm, aber auf die letze Swing Anwendung die ich gesehen drifft das leider alles zu)
>Aber nur wenn du eine hässliche und langsame GUI haben willst die noch >langsamer wird wann man über Terminalserver arbeitet und dafür >mindestens 50Mb ram braucht. Das dürfte schon seit ca. >5 Jahren nicht mehr so sein.
Maik Fox schrieb: > Wenn du eine tolle funktionierende Entwicklungsumgebung haben willst, > ohne viel drüber nachdenken zu müssen: MS Visual Studio 2010 für C# in > der Express Version kostet nichts und ist für kommerzielle Anwendungen > ausdrücklich zugelassen. Und die Sprache ist in der aktuellsten Version > wirklich sehr angenehm. Danke Maik ! Matthias
Wenn Du einfach, schnell und sicher eine Oberfläche erstellen willst, solltest Du Dir mal Tcl/Tk ansehen: - ist einfach per C erweiterbar (sofern überhaupt nötig) - BSD-Lizenz (closed Source also kein Problem) - selbst statisch gelinkt kaum über 1MB große Programme - gibt es für Win, Mac, Unix - kleiner Befehlssatz - Programme sind zum großen Teil selbsterklärend Chris D.
Chris D. schrieb: > Wenn Du einfach, schnell und sicher eine Oberfläche erstellen willst, > solltest Du Dir mal Tcl/Tk ansehen: Das hört sich auch alles recht gut an. Passt da das "Glade" hier dazu oder wie werden die Oberflächen dann gemacht? Matthias
Schau mal in richtung Qt -> ist eine Top Sache, Grafischer editor für GUIs, portabel (Linux/Mac/Windows) Sehr einfach zum einsteigen und sehr mächtig wenn man dann etwas Ahnung hat! http://qt.nokia.com/
Mitstreiter schrieb: > Schau mal in richtung Qt -> ist eine Top Sache, Grafischer editor für > GUIs, portabel (Linux/Mac/Windows) Danke für den Hinweis ! Matthias
High Performer schrieb: > Ist C# nicht inzwischen > deutlich aus dem Blickfeld der Entwickler gerückt? Das wäre mir neu, in der Business Software Entwicklung gibt es natürlich gespaltene Lager, aber durchaus auch welche, die die Strategie Java fürs Backend (Portabibilität ohne GUI) und .Net fürs Frontend (in der Praxis eh meistens Windows) vefolgen. Aber um sowas geht's hier ja nicht.
Hallo, ich komme eher aus der C-Programmierung aber GUIs, vor allem zur Kommunikation mit nem µC, mache ich mit VB 2008. Klar ist die Syntax ungewohnt aber die lernt man schnell. Qt habe ich auch mal probiert. Damit hat man sehr sehr viele Möglichkeiten. Kommt halt darauf an was du machen möchtest. Um schnell und einfach ne GUI zu bauen, die mit nem µC kommuniziert oder einfach was berechnet würd ich VB 2008 nehmen. Sollen es GUIs for SmartPhones oder aufwändigere Arbeiten (z.B. eigener Audio-Player) sein würd ich QT nehmen. Musste halt ma probieren. Aber die eine Sprache für alles gibt es meiner Meinung nach nicht
Sebi schrieb: > GUIs, vor allem zur > Kommunikation mit nem µC, mache ich mit VB 2008. ok. Davon wollte ich ja eher weg. Obwohl ich VB2008 ja gar nicht kenne. Freie Software wäre da Gambas. Das scheint jedoch kaum einer zu kennen . . . > Qt habe ich auch mal probiert. Damit hat man sehr sehr viele > Möglichkeiten. Kommt halt darauf an was du machen möchtest. Um schnell > und einfach ne GUI zu bauen, die mit nem µC kommuniziert oder einfach > was berechnet würd ich VB 2008 nehmen. schnell und einfach ist schon das Ziel. Dazu gehört auch das Reinfinden wenn man es eher selten mal macht. > Sollen es GUIs for SmartPhones oder aufwändigere Arbeiten (z.B. eigener > Audio-Player) sein würd ich QT nehmen. sowas kompliziertes habe ich eher nicht vor. Matthias
Glade ist ausschließlich für Gtk2 und damit auch Portabel. Richtig erkannt, Glade ist von der Programmiersprache unabhängig und du hast die GUI automatisch vom Programm getrennt. Was Glade im Zusammenhang mit Python anbetrifft, kann ich dir gerne weiterhelfen.
Luk4s K. schrieb: > Glade ist ausschließlich für Gtk2 und damit auch Portabel. > Richtig erkannt, Glade ist von der Programmiersprache unabhängig und du > hast die GUI automatisch vom Programm getrennt. > Was Glade im Zusammenhang mit Python anbetrifft, kann ich dir gerne > weiterhelfen. Du favorisiert Python? Matthias
Also auf diese Anfrage "Visual Basic empfand ich genial, was das Erstellen der Oberfläche anbelangte. Die Sprache selbst fand ich grauslich. Wenn es da eine C-ähnliche Sprache gegeben hätte . . ." hin kann man eigentlich nur Visual C# (Express) empfehlen. C# und .NET sind extrem einfach zu lernen und sehr komfortabel. Man kommt schnell zu hervorragenden Ergebnissen... EMPFEHLUNG!
Qt4 ist doch da das Mittel der Wahl, wenn es C/C++ sein soll. Grafischer Editor, portabel (Win, Linux, OSX), frei, ...
Boris B. schrieb: > hin kann man eigentlich nur Visual C# (Express) empfehlen. C# und .NET > sind extrem einfach zu lernen und sehr komfortabel. Man kommt schnell zu > hervorragenden Ergebnissen... Danke Boris ! Dazu fand ich: Das OpenSource-Projekt dotGNU entwickelt eine freie .NET-Version inklusive C#-Compiler und beherrscht Windows.Forms. Das OpenSource-Projekt mono entwickelt eine freie und plattformunabhängige .NET-Version inklusive C#-Compiler. Ein Buch solls auch geben: Klaus Fahnenstich, Rainer G. Haselier: Richtig einsteigen: Programmieren lernen mit Visual C# 2008. Microsoft Press Matthias
Empfehler schrieb: > Qt4 ist doch da das Mittel der Wahl, wenn es C/C++ sein soll. > Grafischer Editor, portabel (Win, Linux, OSX), frei, ... Da sah ich auch ein Buch: Qt 4 - Einführung in die Applikationsentwicklung http://www.qt4-buch.de/ Matthias
Für was hast du dich denn nun entschieden? Das klingt so, als ob du ALLE Vorschläge verwenden möchtest ^^
Matthias W. (matt007) schrieb: > Dazu fand ich: > Das OpenSource-Projekt dotGNU entwickelt eine freie .NET-Version > inklusive C#-Compiler und beherrscht Windows.Forms. Das > OpenSource-Projekt mono entwickelt eine freie und plattformunabhängige > .NET-Version inklusive C#-Compiler. Löblich anzuerkennen, aber doch erst in der Kinderschuhen bzw. gerade mal bei Version 0.1. Da wäre ich vorsichtig und würde warten bis das gereift ist. Das wird sicherlich noch einige Zeit dauern. MS ist inzwischen bei Version 4.0 angelangt und selbst 2.0 war bereits ein sehr ausgereiftes Framework. 2.0 ist zugleich die VErsion die auch noch W2k unterstützt und langt für vieles was man braucht. Außerdem sind die kostenfreien Visual Studio Express Versionen sehr schön gelungen. ;)
Boris B. schrieb: > Für was hast du dich denn nun entschieden? > Das klingt so, als ob du ALLE Vorschläge verwenden möchtest ^^ Hallo Boris, alle nehmen wird den Rahmen sprengen. Mein letztes Projekt mit dem VB5 liegt ein paar Jahre zurück. Eine Entscheidung ist noch nicht gefallen. Momentan suche ich noch nach Argumenten. Wenn ich einen bezahlten Auftrag habe muss ich die Toolkette nehmen die hier Nutzen verspricht. Ggf. muss ich mich auch nach Wünschen richten. Argumente sind eine gute Basis. Matthias
Matthias W. schrieb: > Boris B. schrieb: >> Für was hast du dich denn nun entschieden? > > Eine Entscheidung ist noch nicht gefallen. > Momentan suche ich noch nach Argumenten. > > > Matthias Und wie hast Du dich entschieden?
Für kleine Tools und schnell mal eine GUI, verwende ich immer noch gerne mein XProfan. Ist Basic/Pascal ähnlich und leicht zu erlernen. Es hat zwar kein Werkzeug, um GUI's zu modellieren, ähnlich wie VS-Basic, aber mit den Create-Funktionen geht das fast genauso schnell, eigene Buttons, List/Gridboxen u.v.m. zu erstellen. Ist von der Installation her sehr schlank, und hat alles dabei mit der mitgelinkten Runtime. Keine zusätzlichen DLL's o.ä. Die ausführbaren Programm können sich mit ca. 1 MB auch sehen lassen. Da genügen auch schon die als Freeware freigegeben älteren Versionen oder auch an Version X3 angelehnt FreeProfan 32 oder 64 Bit. Download unter http://xprofan.de/start.htm oder auch hier https://xprofan.net/intl/de/xprofan/
:
Bearbeitet durch User
Hallöchen schrieb: > Und wie hast Du dich entschieden? ich habe PureBasic probiert. Ideal erscheint das jedoch auch nicht. Etwas in der Art HP-Basic, HT-Basic, VB6-Oberfläche + C-Sprache wäre mein Favorit gewesen.
Heinz B. schrieb: > Ist von der Installation her sehr schlank, und hat alles dabei mit > der mitgelinkten Runtime. Danke für den Hinweis Heinz !
Hier ein Beispiel, wie einfach das in Profan geht :
1 | Declare btn1%, btn2%, ende% |
2 | Window 800, 600 |
3 | btn1% = Create("Button", %HWnd, "Hallo", 10, 10, 60, 25) |
4 | btn2% = Create("Button", %HWnd, "Ende", 100, 10, 60, 25) |
5 | ende% = 0 |
6 | |
7 | WhileNot ende% |
8 | WaitInput |
9 | If Clicked(btn1%) |
10 | MessageBox("Hallo, wie geht\nes dir ?", "Info", 0) |
11 | ElseIf Clicked(btn2%) |
12 | ende% = 1 |
13 | EndIf |
14 | Case %Key = 2 : ende% = 1 'Schließen-kreuz abfangen |
15 | EndWhile |
16 | End |
Ein Fenster, zwei Buttons und eine Ereignisschleife. Kein unnötiges Geraffel und Finger verbiegen.
:
Bearbeitet durch Admin
High Performer schrieb: >>Aber nur wenn du eine hässliche und langsame GUI haben willst die > noch >>langsamer wird wann man über Terminalserver arbeitet und dafür >>mindestens 50Mb ram braucht. > > Das dürfte schon seit ca. >5 Jahren nicht mehr so sein. Swing wurde inzwischen von JavaFX abgeköst.
Ich bin von Profan auf PureBasic umgestiegen, will nichts anderes mehr! Sauber und schnell, kostet halt ein bisschen was... Gruss Chregu
Chregu schrieb: > Ich bin von Profan auf PureBasic umgestiegen, will nichts anderes mehr! Danke für den Beitrag !
PureBasic ist zwar auch gut, aber da stört mich einiges. - Bugs, die monatelang oder auch gar nicht gefixt werden. - die Abfragestruktur in der Ereignisschleife Event, Eventgadget, gadgetID usw. -> Zuviel verschachtelt, um eine Aktion abzufragen. Deshalb sehr Anfänger - unfreundlich. Profan ist zwar nur eine Interpretersprache, aber gerade für kleinere Programme und Tools interessant. Auf die Schnelligkeit kommt es mir dabei nicht an. Compilert, merkt man da kein Unterschied.
Der Thread ist zwar schon älter, aber durchaus für viele aktuell. Heinz B. schrieb: > Hier ein Beispiel, wie einfach das in Profan geht : >
1 | > Declare btn1%, btn2%, ende% |
2 | > Window 800, 600 |
3 | > btn1% = Create("Button", %HWnd, "Hallo", 10, 10, 60, 25) |
4 | > btn2% = Create("Button", %HWnd, "Ende", 100, 10, 60, 25) |
5 | > ende% = 0 |
6 | >
|
7 | > WhileNot ende% |
8 | > WaitInput |
9 | > If Clicked(btn1%) |
10 | > MessageBox("Hallo, wie geht\nes dir ?", "Info", 0) |
11 | > ElseIf Clicked(btn2%) |
12 | > ende% = 1 |
13 | > EndIf |
14 | > Case %Key = 2 : ende% = 1 'Schließen-kreuz abfangen |
15 | > EndWhile |
16 | > End |
17 | >
|
> Ein Fenster, zwei Buttons und eine Ereignisschleife. > Kein unnötiges Geraffel und Finger verbiegen. Eine gute Idee - an Beispielen sieht man am besten, ob eine Sprache zu einem passt. Und hier das Ganze nochmal in Tcl/Tk:
1 | package require Tk |
2 | wm geometry . 800x600 |
3 | button .b1 -text "Hallo" -command {tk_messageBox -message "Hallo, wie geht\nes dir ?" -title Info} |
4 | button .b2 -text "Ende" -command exit |
5 | place .b1 -x 10 -y 10 -width 60 -height 25 |
6 | place .b2 -x 100 -y 10 -width 60 -height 25 |
Eww, hartcodierte Absolute Positionen und Grössen in Pixel... Ist sowas immernoch Zeitgemäss im GUI umfeld?
🐧 DPA 🐧 schrieb: > Eww, hartcodierte Absolute Positionen und Grössen in Pixel... Ist sowas > immernoch Zeitgemäss im GUI umfeld? Nein, aber es sollte ein identisches Beispiel sein :-) Wenn es nur für einen Schnellschuss für eigene Verwendung sein soll oder das nur in einer fixen Größe (Maschinensteuerung etc.) läuft, spricht auch nichts dagegen. Ich weiss nicht, wie es unter Profan funktioniert, aber unter Tk gibt es außer "place" noch zwei andere Manager, die eine fein abgestimmte und sehr flexible Skalierbarkeit erlauben.
Heinz B. schrieb: > Profan ist zwar nur eine Interpretersprache, aber gerade für > kleinere Programme und Tools interessant. Danke dafür Heinz !
Chris D. schrieb: > Eine gute Idee - an Beispielen sieht man am besten, ob eine Sprache zu > einem passt. Und hier das Ganze nochmal in Tcl/Tk vielen Dank für das schöne Beispiel Chris ! kennst Du zu Tcl/Tk ein einfaches Tutorial wo man sieht was an Installation nötig ist und wie man rasch Erfolg mit einfachen Beispielen haben kann?
🐧 DPA 🐧 schrieb: > Eww, hartcodierte Absolute Positionen und Grössen in Pixel... Ist sowas > immernoch Zeitgemäss im GUI umfeld? Natürlich kann man das auch anders machen. XProfan bzw. Profan bietet hierfür eine Menge Systemvariablen an, die entweder beim Start eines Programmes automatisch gesetzt werden oder auch beim Erzeugen eines Standardfensters ausgelesen werden : %Width, %Height, %WinTop, %WinBottom, %WinRight, %WinLeft, %DeskTop %MaxX, %MaxY usw. Auf diese kann jederzeit zugegriffen werden. Somit ist es leicht möglich, anhand der Bildschirmauflösung sein Fenster bzw. Dialogelemente zu platzieren bzw. Größe zu bestimmen. Im obigen Beispiel habe ich das der Einfachheit nicht gemacht und um die Interessierten nicht zu viel zu belasten. Sonst sähe es wiederum sehr cryptich aus. Hier mal die Tabelle aller System-Variablen :
1 | $AppDataDir Verzeichnis für Anwendungsdaten |
2 | %BitsPixel Farbtiefe des Desktops in Bits pro Pixel |
3 | %BmpB Farbtiefe des zuletzt geladenen Bildes in Bits pro Pixel |
4 | &BmpCol Farbanzahl des zuletzt geladenen Bildes |
5 | !BmpF Vergrößerungsfaktor des zuletzt geladenen Bildes |
6 | %BmpX Breite des zuletzt geladenen Bildes |
7 | %BmpY Höhe des zuletzt geladenen Bildes |
8 | %Button Wert des zuletzt betätigten Buttons |
9 | %ChildMessage Message nach Klick auf untergeordnetes Element |
10 | %CsrLin Augenblickliche Zeile im simulierten Textmodus |
11 | $CurrentDir Das aktuelle Arbeitsverzeichnis |
12 | %cyCaption Höhe der Titelleiste |
13 | %cyMenu Höhe der Menüzeile |
14 | %dbDeleted Löschkennzeichen des aktuellen Datensatzes |
15 | %dbEoF End-Of-File-Kennzeichen der aktiven Tabelle |
16 | %dbFCount Zahl der Felder eines Satzes der aktiven Tabelle |
17 | %dbFDecs Dezimalstellen des aktuellen Feldes |
18 | %dbFLen Länge des aktuellen Feldes |
19 | $dbFName Name des aktuellen Feldes |
20 | %dbFNumber Nummer des aktuellen Feldes |
21 | $dbFType Typ des aktuellen Feldes |
22 | %dbHeader Länge des Headers der aktiven Tabelle |
23 | $dbLUpdate Datum der letzten Änderung der Tabelle (Jahr 2-stellig) |
24 | $dbLUpdate4 Datum der letzten Änderung der Tabelle (Jahr 4-stellig) |
25 | %dbMemo Kennzeichen ob Tabelle Memo-Felder enthält |
26 | &dbRecCount Anzahl der Datensätze der Tabelle |
27 | &dbRecNo Nummer des aktuellen Datensatzes |
28 | %dbRecSize Länge eines Datensatzes der Tabelle |
29 | %dbVersion Version der geöffneten Tabelle |
30 | %DDEWin Handle des DDE-Servers |
31 | %Desktop Handle des Hintergrundfensters |
32 | &DlgProc Prozeduradresse eines mit Create("Dialog" erzeugten Fensters |
33 | &DlgWProc Prozeduradresse eines mit Create("Window" erzeugten Fensters |
34 | %DOS16 Liefert 1 in der 16-Bit DOS-Version von Profan zurück (Entwicklung seit Profan 4.0 eingestellt) |
35 | %DOS32 Liefert 1 in der 32-Bit DOS-Version von Profan zurück |
36 | $DosVer Ermittelt die DOS-Version |
37 | $Download Ergebnis der Funktion DownLoadFile() |
38 | $Drive Aktuelles Laufwerk, ohne Pfadangabe |
39 | %DropDownID ButtonI-ID des gedrückten DropDownPfeils |
40 | $ErrFile Datei, in der der Fehler auftrat |
41 | %ErrLine Zeile, in der der Fehler auftrat |
42 | %ErrNumber Enthält die Nummer des zuletzt aufgetretenen Fehlers |
43 | %Error Der zuletzt aufgetretene Fehlercode |
44 | %ErrorLevel Augenblicklicher Errorlevel |
45 | $ErrStr Zusätzliche Informationen zum Fehler |
46 | %Font Handle auf die mit UseFont eingestellte Schrift |
47 | %FTPConnected Kennzeichen ob FTP-Verbindung besteht |
48 | %FTPRunning Zeigt an, ober der Down oder Upload im Hintergrund noch läuft |
49 | %FTPStatus Status-/Fehlernummer der letzten FTP-Funktion |
50 | $FTPStatus Status-/Fehlertext der letzten FTP-Funktion |
51 | %GetCount Anzahl der Einträge in der ListBox-Liste |
52 | %GetCurSel Nummer des in einer Listbox gewählten Eintrages |
53 | %GetFocus Handle des aktiven Fensterobjektes |
54 | %GetInputState Augenblicklicher Eingabestatus |
55 | $GetInput Der zuletzt mit der Funktion Input$ eingegebene Text |
56 | $GetText Der zuletzt in einem Listbox-Dialog ausgewählte Text |
57 | &GetTickCount Anzahl von Millisekunden an seit Windows gestartet wurde |
58 | %hDC Display-Context des Hauptfensters |
59 | %hDC2 Display-Context der Hauptfensterkopie |
60 | %hInstance Instanz-Handle des aktuell laufenden XProfan-Programms |
61 | &hMenu Handle des Menüs des Hauptfensters |
62 | &hPaintWin Das Fenster/Objekt auf das mit StartPaint gezeichnet wird |
63 | &hWnd Handle des Hauptfensters des XProfan-Programms |
64 | %hWnd Handle des Hauptfensters des XProfan-Programms (alte Schreibwerise) |
65 | %Input Der zuletzt mit Input eingegebene Integer-Wert |
66 | !Input Der zuletzt mit Input eingegebene Float-Wert |
67 | $Input Der zuletzt mit Input eingegebene String |
68 | &Input Der zuletzt mit Input eingegebene LongInt-Wert |
69 | %IOResult Ergebnis einer Dateioperation oder einer Directory-Suche |
70 | %ItemId Zuletzt angewähltes Dialogelement (DialogID) |
71 | %Key ANSI-Code der zuletzt gedrückten Taste |
72 | &LastFocus aktives Handle beim letzten WaitInput |
73 | %LastMessage Message fest des letzten WaitInput |
74 | %LFN Kennziffer ob lange Dateinamen verwandt werden |
75 | %Linux Liefert 1 bei Linux zurück |
76 | %Loading Gibt an, ob der Download abgeshlossen ist oder noch läuft |
77 | &Loop Zählvariablen in einer WhileLoop-Schleife |
78 | &lParam Meldungsspezifische Daten einer Message |
79 | $Match Ergebnisstring einer Suche mit Regulärem Ausdruck |
80 | %MatchLen Ergebnislänge einer Suche mit Regulärem Ausdruck |
81 | %MatchPos Position des Ergebnisses einer Suche mit Regulärem Ausdruck |
82 | %MaxX Horizontale Auflösung des Bildschirmes |
83 | %MaxY Vertikale Auflösung des Bildschirmes |
84 | %MCIError Zuletzt gemeldeter Fehler beim Senden eines MCI-Strings |
85 | &MemDC Devicecontext der Memory-Bitmap |
86 | %MenuItem Identifikationsnummer des zuletzt angewählten Menüpunktes |
87 | %Message Nummer der letzten aufgetretenen Message |
88 | %MfX Breite des zuletzt geladenen Metafiles |
89 | %MfY Höhe des zuletzt geladenen Metafiles |
90 | %MouseKey Zuletzt betätigte Maustaste |
91 | %MousePressed Kennziffer der augenblicklich betätigten Taste |
92 | %MouseX Aktuelle X-Position der Maus |
93 | %MouseY Aktuelle Y-Position der Maus |
94 | &MWnd Zielfenster der letzten Message |
95 | %MWnd Zielfenster der letzten Message (alte Schreibweise) |
96 | %NotifyCode Code des aufgetretenen Ereignisses |
97 | &NotifyWnd Handle des Dialogelementes, das %NotifyCode sendete |
98 | !Now Aktueller Zeipunkt im XProfan-/Delphi-Format |
99 | %oGLError Der letzte aufgetretene Fehler bei OpenGL-Funktionen |
100 | %OS2 Liefert 1 bei der OS/2-Version von Profan zurück (Entwicklung seit Profan 4.0 eingestellt) |
101 | %ParCount Anzahl der übergebenen Kommandozeilen-Parameter |
102 | %PCount Anzahl der übergebenen Parameter des letzten Prozeduraufrufes |
103 | &PDC Device-Context des Druckers |
104 | %PeekMessage Kennziffer ob eine Message vorliegt |
105 | &Pid Prozess-ID des laufenden Programms |
106 | %Pos Augenblickliche Spalte im simulierten Textmodus |
107 | %Printing Kennziffer ob Druckvorgang aktiv ist |
108 | $ProfVer Aktuelle XProfan-Version |
109 | $ProgDir Verzeichnis, in dem die Exedatei gestartet wurde |
110 | %ProgEnd Position in der Datei, wo das Kompilat aufhört und die Daten beginnen |
111 | %ScanKey Scancode (virtueller Code) der zuletzt gedrückten Taste |
112 | &sLParam Meldungsspezifische Daten der Subclassing-Message |
113 | %sMessage Meldungsnummer der Subclassing-Message |
114 | &SQLCount Anzahl der vom letzten SQL-Befehl bearbeiteten Datensätze |
115 | &SQLDBC Enthält das Handle der gerade aktuellen Datenbankverbindung |
116 | &SQLENV Enthält das Environmenthandle der aktuellen ODBC-Session |
117 | $SQLError Fehlertext des letzten SQL-Fehlers |
118 | &sWnd Zielfenster der Subclassing-Message |
119 | &sWParam Meldungsspezifische Daten der Subclassing-Message |
120 | $SysPath Windows-System-Pfad |
121 | $TempDir Aktuelles temporäres Verzeichnis |
122 | %TextHight Texthöhe nach DrawText |
123 | &UlParam Wert von lParam der Usermessage |
124 | %UMessage Kennziffer ob Usermessage aufgetreten, ist |
125 | $UserDir Verzeichnis für Benutzerdaten |
126 | &UWnd Zielfenster der Usermessage |
127 | &UwParam Wert von wParam der Usermessage |
128 | %Win16 Liefert 1 bei der 16-Bit Windows-Version von Profan zurück (Entwicklung seit Profan 6.5 eingestellt) |
129 | %Win32 Liefert 1 bei der 32-Bit Windows-Version von XProfan zurück |
130 | %WinBottom Y-Koordinate des unteren Fensterrandes |
131 | %WindowStyle Aktueller XProfan-Fensterstil |
132 | &WinDProc Prozeduradresse eines Hauptfensters mit Dialogstil |
133 | %WinError Der zuletzt aufgetretene Windowsfehler |
134 | %WinLeft X-Koordinate des linken Fensterrandes |
135 | $WinPath Windows-Pfad |
136 | &WinProc Prozeduradresse eine Hauptfensters |
137 | %WinRight X-Koordinate des rechten Fensterrandes |
138 | %WinTop Y-Koordinate des oberen Fensterrandes |
139 | $WinVer Ermittelt die Windows-Version |
140 | %wmNotify Kennziffer ob Message wm_Notify aufgetreten ist |
141 | %wmPaint Kennziffer ob Ereignis wm_Paint ausgelöst wurde |
142 | %wmTimer Kennziffer ob der Timer mit SetTimer eingestellt wurde |
143 | &wParam Meldungsspezifische Daten einer Message |
:
Bearbeitet durch User
Matthias W. schrieb: > Chris D. schrieb: >> Eine gute Idee - an Beispielen sieht man am besten, ob eine Sprache zu >> einem passt. Und hier das Ganze nochmal in Tcl/Tk > > vielen Dank für das schöne Beispiel Chris ! > > kennst Du zu Tcl/Tk ein einfaches Tutorial wo man sieht was an > Installation nötig ist und wie man rasch Erfolg mit einfachen Beispielen > haben kann? Ich hatte damals ein echtes Buch, um die Grundlagen zu erlernen - ist aber auch schon 25 Jahre her und vieles wird mittlerweile leicht anders gemacht. Immer eine gute Anlaufstelle ist: www.tcl.tk Dort findet man alles rund um Tcl/Tk, u.a. ein sehr gutes Wiki mit vielen Beiträgen sowie den gesamten Befehlssatz. Auf die Schnelle habe ich hier eine Seite mit Links auf viele Tutorien gefunden: https://wiki.tcl-lang.org/page/Online+Tcl+and+Tk+Tutorials Das hier sieht sehr gut aus, ist aktuell und deutschsprachig: http://tcltk.info/buch.html Nur als Info: Tcl ist die eigentliche Skriptsprache, die man natürlich auch ohne grafische Oberfläche verwenden kann. Tk ist die Erweiterung für das Erstellen der grafischen Oberflächen (daher wird sie in meinem Beispiel auch explizit mit "package" dazugeladen) Ansonsten: Tcl/Tk ist gerade in Hinblick auf grafische Oberflächen sehr einfach zu erlernen. Die Programmtexte sind quasi selbsterklärend (sieht man ja oben). Wichtig dabei ist nur, dass man sich die Arbeitsweise der sog. "Geometriemanager" (im Beispiel ist es der place-Geometriemanager) einmal in Ruhe klar macht. Die Installation ist sehr einfach - für Linux etc. gibt es in jeder Distribution Pakete. Unter Windows muss man das mWn auch einfach nur aus einer exe heraus installieren (ist aber schon ewig her, dass ich das mal gemacht habe). Der Aufruf eines Programms erfolgt dann üblicherweise mit "tclsh name.tcl". Compilieren ist nicht nötig, da Skriptsprache (allerdings mit internem Bytecompiler). Tcl/Tk steht unter der BSD-Lizenz, ist also nochmal "freier" als unter GPL, und das gibt es für fast alle Plattformen (Mac, Win, Unixe etc.) - hier bei uns sogar unter AVR/STM32, weil ich die Tk-Schnittstelle entsprechend angepasst habe.
:
Bearbeitet durch Moderator
Heinz B. schrieb: > Profan ist zwar nur eine Interpretersprache, V11.2a ist ist jetzt auch Freeware: http://xprofan.de/start.htm Heinz B. schrieb: > - die Abfragestruktur in der Ereignisschleife > Event, Eventgadget, gadgetID usw. > -> Zuviel verschachtelt, um eine Aktion abzufragen. Ja stimmt, ist äusserst mühsam. Bis mal die Grundstruktur erstellt ist, danach geht's. Network-Event habe ich bis heute nicht sauber zum funktionieren gebracht. Aber sonst: läuft alles viel schneller und sauberer, als es jemals mit XProfan und ProSpeed-DLL ging... Gruss Chregu
Chregu schrieb: > Aber sonst: läuft alles viel schneller und sauberer, als es jemals mit > XProfan und ProSpeed-DLL ging... Das ist ja mal klar. PureBasic erzeugt reinen ASM-Output. Und Sprites & Co. sind nunmal eine ganz andere Liga. Aber ansonsten, wenn es nur um GUI oder sonstige kleine Dinge geht, merkt man das Plus an Geschwindigkeit nicht. Und außerdem kann man ab Version X4 auch mit ASM nachhelfen. Und das 'sauberer' sei mal dahin gestellt, wenn ich so die ganzen Bugs über die Jahre betrachte, die nicht oder nur ganz rudimentär gefixt wurden. Auf der anderen Seite sind bei PB auch 3 Betriebssysteme (WIN, LINUX, MAC) zu bedienen. Da nenne ich auch nur mal Spiderbasic mit seinem Cordowa - Untersatz.
:
Bearbeitet durch User
Matthias W. schrieb: > Luk4s K. schrieb: >> Glade ist ausschließlich für Gtk2 und damit auch Portabel. >> Richtig erkannt, Glade ist von der Programmiersprache unabhängig und du >> hast die GUI automatisch vom Programm getrennt. >> Was Glade im Zusammenhang mit Python anbetrifft, kann ich dir gerne >> weiterhelfen. > > Du favorisiert Python? Natürlich, was sonst? Extrem einfach und gleichzeitig extrem leistungsfähig, was will der Entwickler mehr? Schau mal in die (natürlich unvollständige) Liste von Python-Software, wofür das alles benutzt wird (auch kommerziell etc.): https://en.wikipedia.org/wiki/List_of_Python_software Wenn es von AutoDesk, Goldman Sachs, die NASA, Youtube, Reddit, Instagram, Rosneft, Corel und ein paar anderen der größten und erfolgreichsten Unternehmen dieser Welt bevorzugt wird und obendrein die beliebteste Allzweckskriptsprache der Welt ist... Dann wird es wohl nicht ganz verkehrt sein, oder? ;-)
Heinz B. schrieb: > 🐧 DPA 🐧 schrieb: >> Eww, hartcodierte Absolute Positionen und Grössen in Pixel... Ist sowas >> immernoch Zeitgemäss im GUI umfeld? > > Natürlich kann man das auch anders machen. > XProfan bzw. Profan bietet hierfür eine Menge Systemvariablen > an, die entweder beim Start eines Programmes automatisch > gesetzt werden oder auch beim Erzeugen eines Standardfensters > ausgelesen werden : %Width, %Height, %WinTop, %WinBottom, > %WinRight, %WinLeft, %DeskTop %MaxX, %MaxY usw. > Auf diese kann jederzeit zugegriffen werden. Somit ist es leicht > möglich, anhand der Bildschirmauflösung sein Fenster bzw. > Dialogelemente zu platzieren bzw. Größe zu bestimmen. Wenn ich so etwas lese bekomme ich Krämpfe, geschweige wenn ich so eine GUI benutzen oder programmieren müsste. Du willst also deine Applikation etwa so schrieben: if(Width>xxxx and Height >yyyy) mach ein Layout else if(Width>zzzz and Height >qqqq) mach anderes Layout usw.... usf.... Und was ist mit den Fonts? Glaubst du, dass jeder Arial 11 benutzt? Lerne was gescheites lieber, Qt ist sehr gut was das angeht.
Matthias W. schrieb: > Wie kann man denn rasch ohne großen Lernaufwand > eine Oberfläche zurechtzuzimmern? Ist immer wieder interessant, was manche so möchten, ohne großen Lernaufwand zu betreiben. BobbyX schrieb: > Wenn ich so etwas lese bekomme ich Krämpfe, geschweige wenn ich so eine > GUI benutzen oder programmieren müsste. Du willst also deine Applikation > etwa so schrieben: > > if(Width>xxxx and Height >yyyy) > mach ein Layout > else if(Width>zzzz and Height >qqqq) > mach anderes Layout > usw.... usf.... Daran sehe ich schon, daß das nichts wird. Wer schon die maximale Bildschirm breite - und Höhe mit > abfragt ? Größer was denn bitte ? Mit %MaxX und %MaxY hat man ja schon die max. Bildschirmauflösung. Und mit etwas Rechnen hast du immer ein mittiges Fenster, egal welche Auflösung.
Chris D. schrieb: > Tcl/Tk ist gerade in Hinblick auf grafische Oberflächen > sehr einfach zu erlernen. Die Programmtexte sind quasi > selbsterklärend (sieht man ja oben). Mir ist Tcl zu seltsam, aber Tk lässt sich (als Tkinter) auch prima mit Python benutzen. Man ist also keineswegs auf eine Programmiersprache festgelegt. Die Geometriemanager sollte man trotzdem verstehen, sonst bekommt man unsichtbare Elemente und wundert sich, dass nichts passiert. Vor ein paar Jahren hatte ich auch mal Gtk2 mit den Perl-Bindings benutzt, das war auch sehr angenehm. Deutlich angenehmer als in C.
Jemand schrieb: > Wenn es von AutoDesk, Goldman Sachs, die NASA, Youtube, Reddit, > Instagram, Rosneft, Corel und ein paar anderen der größten und > erfolgreichsten Unternehmen dieser Welt bevorzugt wird und obendrein die > beliebteste Allzweckskriptsprache der Welt ist... Dann wird es wohl > nicht ganz verkehrt sein, oder? ;-) Doch. Gruss Chregu
S. R. schrieb: > Chris D. schrieb: >> Tcl/Tk ist gerade in Hinblick auf grafische Oberflächen >> sehr einfach zu erlernen. Die Programmtexte sind quasi >> selbsterklärend (sieht man ja oben). > > Mir ist Tcl zu seltsam Hehe, mir Python ;-) > aber Tk lässt sich (als Tkinter) auch prima mit > Python benutzen. Man ist also keineswegs auf eine Programmiersprache > festgelegt. Die Geometriemanager sollte man trotzdem verstehen, sonst > bekommt man unsichtbare Elemente und wundert sich, dass nichts passiert. Ja, genau, das kann man auch unter Python nutzen. Hätte ich noch dazuschreiben sollen. Allerdings verschenkt man sich da die Tonnen an Tk-Skripten und die Tk-Lib, die für Tcl/Tk existieren bzw. muss diese anpassen. Und es fühlt sich nicht nach "aus einem Guss" an. Tk integriert sich beim Schreiben einfach sehr schön in Tcl (verständlich, es war ja bis 7.6 richtig integriert ;-), aber das ist natürlich auch Geschmackssache. Tk ist auf jeden Fall sehr ausgereift und Programme - selbst als Stand-Alone-Executable - sehr klein. Ergänzung: Gab es nicht auch eine App als Wrapper, mit der man Tcl/Tk-Oberflächen für Smartphones etc. basteln konnte?
:
Bearbeitet durch Moderator
Chris D. schrieb: > Allerdings verschenkt man sich da die Tonnen an Tk-Skripten und die > Tk-Lib, die für Tcl/Tk existieren bzw. muss diese anpassen. Magst du ein bisschen ausführen, was einem da verloren geht? Ich habe bisher mit Tkinter nur sehr wenig gemacht und daher wenig Erfahrung. Chris D. schrieb: > Und es fühlt sich nicht nach "aus einem Guss" an. Das ist leider wahr. Im Gegensatz zu den großen Frameworks wie GTK und Qt ist Tkinter allerdings ein Standardbaustein für Python, was für mich ein Grund für die Benutzung war. Ich stehe nicht besonders auf Abhängigkeiten, wenn es nicht sein muss.
Wolfgang Höhne schrieb: > . Net ist im übrigen auch open source... Siehe > https://dotnet.microsoft.com/ Mittlerweile. 2010 war das noch nicht so... Zugegeben: ich bin auch erst drübergestolpert, als ich die Empfehlung für das Visual Studio 2010 Express gelesen habe...
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.