<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0">
	<channel>
		<title>BlitzBasic Portal Worklogs - Tinkerer's Auxiliary</title>
		<link>https://www.blitzforum.de/worklogs/413/</link>
		<description>Worklog von Tritium</description>
		<language>de</language>
		<managingEditor>mail@blitzforum.de</managingEditor>
		<webMaster>mail@blitzforum.de</webMaster>
		<pubDate>Thu, 24 May 2012 20:58:58 +0200</pubDate>
		<lastBuildDate>Thu, 24 May 2012 20:58:58 +0200</lastBuildDate>

		<item>
			<title>Stand der Dinge</title>
			<link>https://www.blitzforum.de/worklogs/413/#3550</link>
			<guid>https://www.blitzforum.de/worklogs/413/#3550</guid>
			<author>Tritium</author>
			<description>Wie hab ich da so sch&amp;ouml;n geschrieben? &amp;quot;Als n&amp;auml;chstes werd ich ein &lt;i&gt;einfaches&lt;/i&gt; Programm (mir schwebt da ein Einheitenrechner vor) schreiben...&amp;quot;&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;Eine kleine GUI ist schnell zusammenget&amp;uuml;delt, dann mal eben ein paar Einheiten implementiert, funktioniert. Aber - was ist das?&lt;br /&gt;&lt;b&gt;Code: &lt;/b&gt;&lt;span style=&quot;font-size:0.8em; display:inline;&quot; id=&quot;showcodebox0&quot;&gt; &lt;a href=&quot;javascript&amp;#058;show_code('0')&quot;&gt;[AUSKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;span style=&quot;font-size:0.8em; display:none;&quot; id=&quot;hidecodebox0&quot;&gt; &lt;a href=&quot;javascript&amp;#058;hide_code('0')&quot;&gt;[EINKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;div id=&quot;codebox0&quot; class=&quot;codebox&quot; style=&quot;max-height: 200px;&quot; onload=&quot;check_code('0');&quot;&gt;1000000.0 * 0.000001 = 0.99999999747524271&lt;/div&gt;&lt;br /&gt; &lt;img src=&quot;/forum/images/smiles/icon_evil.gif&quot; alt=&quot;Evil or Very Mad&quot; /&gt;  Soviel zum Thema einfach... da h&amp;auml;tte ich auch vorher dran denken k&amp;ouml;nnen. Zun&amp;auml;chst ist das ein eher &amp;auml;sthetisches Problem, schlie&amp;szlig;lich liefert die Rechnung ziemlich genau das richtige Ergebnis. &lt;i&gt;Ziemlich genau&lt;/i&gt; lie&amp;szlig;e sich nach &lt;i&gt;ganz genau&lt;/i&gt; runden, sobald aber noch ein paar Zehnerpotenzen mehr &amp;uuml;berbr&amp;uuml;ckt werden m&amp;uuml;ssen ist das nichtmehr so einfach.&lt;br /&gt;&lt;br /&gt;Da hilft nur eins: &lt;b&gt;Mehr Power!&lt;/b&gt; Und eh ich mich versah hab ich an einem Stringrechner gefrickelt. &lt;img src=&quot;/forum/images/smiles/icon_lol.gif&quot; alt=&quot;Laughing&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Ich hab mir die Stringrechner hier im Forum vorher angesehen, mir hat jedoch keiner zugesagt. Zu wenig M&amp;ouml;glichkeiten, nicht robust genug (z.B. gegen&amp;uuml;ber fehlerhaften Eingaben) und trotz Arbeitserleichterung w&amp;auml;re eine Einarbeitung notwendig gewesen - versteht mich bitte nicht falsch, die hier verf&amp;uuml;gbaren Stringrechner (insbesondere der von Rallimen) sind klasse, ich wei&amp;szlig; ja (mittlerweile  &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; ), wieviel Arbeit in so etwas steckt. Da mich aber auch interessierte, wie diese Rechner programmiert werden, hab ich mich dann selbst drangesetzt. Bisher kann ich folgendes vorweisen:&lt;br /&gt;&lt;br /&gt; - Eigenes Modul mit Dokumentation jeder verf&amp;uuml;gbaren Funktion&lt;br /&gt; - Unterst&amp;uuml;tzung f&amp;uuml;r negative Zahlen und Flie&amp;szlig;kommazahlen&lt;br /&gt; - Robust gegen&amp;uuml;ber falschen Eingaben&lt;br /&gt; - Unterst&amp;uuml;tzt positive und negative Unendlichkeit sowie NAN (Not a number)&lt;br /&gt; - S&amp;auml;mtliche Zahlen k&amp;ouml;nnen ohne zus&amp;auml;tzlichen Aufwand auch &lt;a href=&quot;http://de.wikipedia.org/wiki/Wissenschaftliche_Notation&quot; target=&quot;_blank&quot;&gt;e-notiert&lt;/a&gt; &amp;uuml;bergeben werden (in ca. f&amp;uuml;nf verschiedenen Schreibweisen)&lt;br /&gt; - Zahlen k&amp;ouml;nnen von der g&amp;auml;ngigen Notation in die wissenschaftliche/technische Notation &amp;uuml;berf&amp;uuml;hrt werden und umgekehrt&lt;br /&gt; - Pi und die Eulersche Zahl e sind mit 100 Nachkommastellen verf&amp;uuml;gbar&lt;br /&gt; - Hilfsfunktionen wie Sgn und Abs&lt;br /&gt; - Momentan unterst&amp;uuml;tzte Grundrechenarten: Addition, Subtraktion, Multiplikation (basierend auf der Trachtenberg-Methode)&lt;br /&gt; - Genauigkeit der Rechnungen kann verringert werden, um unn&amp;ouml;tige Berechnungen und somit Rechenzeit zu sparen&lt;br /&gt;&lt;br /&gt;Mit der Schnelligkeit bin ich recht zufrieden, im Debugmodus wird die Fakult&amp;auml;t von 1000 in ca. 10 Sekunden berechnet (das Ergebnis hat etwas mehr als 2500 Stellen), ohne Debug sinds zwei, drei Sekunden weniger. Momentan fehlt die Division, da scheue ich mich noch etwas vor  &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Wie oben bereits erw&amp;auml;hnt basiert die Multiplikation (und dann auch die Division) auf den Schnellrechenmethoden nach Trachtenberg - wenn man das System erstmal verstanden hat bringt es so einiges, auch auf Papier (wof&amp;uuml;r es entwickelt wurde). Solltet Ihr Euch bei Interesse also mal ansehen, so schwierig ist es nicht! Programmiertechnisch brachte es f&amp;uuml;r mich v.a. den Vorteil, dass ich trotz des Umgangs mit Strings viele Berechnungen mit Integern durchf&amp;uuml;hren konnte.&lt;br /&gt;&lt;br /&gt;F&amp;uuml;r die Zukunft hat die Division absolute Priorit&amp;auml;t, da ich damit dann die vier Grundrechenarten zur Verf&amp;uuml;gung h&amp;auml;tte. Darauf aufbauend lassen sich dann Quadrate, Wurzeln, Fakult&amp;auml;ten, trigonometrische Funktionen etc. berechnen. Au&amp;szlig;erdem m&amp;ouml;chte ich ganz gerne, dass man Pi mit mehr Nachkommastellen bestimmen kann (hat aber vorerst keine Priorit&amp;auml;t). F&amp;uuml;r geometrisches sind zehn, zw&amp;ouml;lf Nachkommastellen zwar mehr als genug, stattdessen lie&amp;szlig;en sich solche quasi-zuf&amp;auml;lligen Zahlenfolgen z.B. f&amp;uuml;r kryptographische Zwecke nutzen (von Euch, ich muss mich dann mal wieder auf das eigentliche Programm konzentrieren  &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; ).&lt;br /&gt;&lt;br /&gt;Auch wenn ich vermute, dass sich die an diesem Worklog Interessierten an einem Finger abz&amp;auml;hlen lassen glaube ich, dass ein Stringrechner f&amp;uuml;r manche eine Arbeitserleichterung sein k&amp;ouml;nnte. Deswegen werde ich vermutlich, wenn er weiter ausgebaut ist, das Modul hochladen. Vielleicht behalte ich mir vor, nur vorkompilierte Module zur Verf&amp;uuml;gung zu stellen, schlie&amp;szlig;lich steckt einiges an Arbeit drin, aber das werd ich entscheiden wenn es soweit ist.&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;Nebenbei habe ich mich etwas um die Kommunikation zwischen den Programmen gek&amp;uuml;mmert, die Theorie ist aber immer noch sehr bescheiden. Wie schon an anderer Stelle erw&amp;auml;hnt, ich programmiere gerne, aber mein Lieblingshobby ist es definitiv nicht, deswegen bin ich hier im Forum eher weniger produktiv &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt;  Trotzdem hoffe ich, Euch weiterhin halbwegs konstant von Fortschritten berichten zu k&amp;ouml;nnen.&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;Und dann w&amp;auml;re da noch etwas: Trotz Freunden, Hobbies und nicht zuletzt Uni etc. bleibt gl&amp;uuml;cklicherweise immer wieder mal etwas Zeit f&amp;uuml;rs Programmieren, doch hin und wieder kann ich mich einfach nicht dazu motivieren. Weniger wegen des Codens an sich, sondern weil ich nach konstanter Besch&amp;auml;ftigung (bspw. mit Schnellrechenmethoden &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; ) etwas anderes machen m&amp;ouml;chte. Deswegen &amp;uuml;berlege ich momentan, ob ich einen zweiten Worklog anfange, den ich komplett einem Spiel widme. Ich habe noch keine konkreten Vorstellungen, es soll vom Schwierigkeitsgrad (f&amp;uuml;r den Programmierer) aber eher moderat bleiben, damit ich etwas habe, was ich fertigstellen kann. Damit h&amp;auml;tte ich dann zur doch eher dr&amp;ouml;gen Anwendungsentwicklung ein kreatives Gegenst&amp;uuml;ck.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Naja, man wird sehen. Bis dahin!</description>
			<pubDate>Thu, 24 May 2012 20:58:58 +0200</pubDate>
		</item>

		<item>
			<title>Umstrukturierungen und so</title>
			<link>https://www.blitzforum.de/worklogs/413/#3510</link>
			<guid>https://www.blitzforum.de/worklogs/413/#3510</guid>
			<author>Tritium</author>
			<description>N'Abend,&lt;br /&gt;&lt;br /&gt;wie aus meinem letzten Post vielleicht zwischen den Zeilen zu lesen war, wird das Konzept nach wie vor &amp;uuml;berarbeitet. Bei aller Liebe zur Bauteilverwaltung hatte ich bisher n&amp;auml;mlich keine &amp;uuml;berzeugende Idee, wie ich denn zus&amp;auml;tzliche Features (wie eine Projektverwaltung, ein Lexikon, etc.) sinnvoll einbinde, ohne das Programm vollkommen zu &amp;uuml;berladen. Die Idee der Bauteilverwaltung gef&amp;auml;llt mir sehr gut, aber dennoch gibt es noch so einige Sachen, die man als Elektronikbastler doch auch vom Computer erledigen lassen k&amp;ouml;nnte. Und nicht zu vernachl&amp;auml;ssigen ist, dass es bereits einige Programme zur Bauteilverwaltung gibt. Sie gefallen mir zwar nicht (was ja Geschmackssache ist), aber das ist kein triftiger Grund, warum dieses Programm besser ist als die bereits bestehenden.&lt;br /&gt;&lt;br /&gt;Ums kurz zu machen: Von den Klausuren abgesehen hat mich diese Unsicherheit davon abgehalten, gro&amp;szlig;e Fortschritte zu machen. Doch gl&amp;uuml;cklicherweise gibt es manchmal so etwas wie Geistesblitze  &lt;img src=&quot;/forum/images/smiles/icon_biggrin.gif&quot; alt=&quot;Very Happy&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Warum sollte ich das ganze nicht etwas modularer gestalten? Das w&amp;uuml;rde dazu f&amp;uuml;hren, dass man zus&amp;auml;tzliche Features problemlos hinzuf&amp;uuml;gen k&amp;ouml;nnte ohne die Bauteilverwaltung zu &amp;uuml;berladen. Und diesen Gedankengang hab ich in diesem Prototypen manifestiert:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;https://www.blitzforum.de/upload/file.php?id=11575&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Damit bin ich von der urspr&amp;uuml;nglichen Idee etwas abgewichen (und ganz nebenbei seht Ihr jetzt auch, welche Bedeutung TA hat  &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; ). Damit wird aus der Bauteilverwaltung ein Programm zur Verwaltung von hilfreichen Elektronik-Programmen, unter denen eines dann eine Bauteilverwaltung ist. Da diese Programme in einem zentralen Programm verwaltet werden, kann ich es mir gut vorstellen, dass diese Programme sich auch aufeinander beziehen k&amp;ouml;nnen, will hei&amp;szlig;en, m&amp;ouml;chte ich bspw. in meiner Bestandsverwaltung etwas &amp;uuml;ber ein Bauteil wissen, ruft TA automatisch das Lexikon-Programm mit dem entsprechenden Artikel auf.&lt;br /&gt;&lt;br /&gt;Zum Screenshot: Zun&amp;auml;chst m&amp;ouml;chte ich an dieser Stelle feststellen, dass ich den h&amp;auml;sslichen B&amp;uuml;ro-Look unbedingt &amp;uuml;berarbeiten m&amp;ouml;chte. Da das aber auf die Funktionalit&amp;auml;t keinen Einfluss hat, muss das leider warten  &lt;img src=&quot;/forum/images/smiles/icon_rolleyes.gif&quot; alt=&quot;Rolling Eyes&quot; /&gt; &lt;br /&gt;Unter dem Fragezeichen links oben findet sich eine kurze Hilfe zum Programm, in der das wichtigste beschrieben ist. &amp;Uuml;ber das Plus links unten werden neue Programme importiert, sodass sie dann in der Liste angezeigt werden. &amp;Uuml;brigens existiert bisher kein einziges Programm, ich hab da nur mal ein paar Dummys platziert, um das Bild etwas anschaulicher zu machen.&lt;br /&gt;Jedes Programm wird mit drei Buttons in die Liste eingetragen: Der gro&amp;szlig;e (der die Beschriftung tr&amp;auml;gt) startet das entsprechende Programm. &amp;Uuml;ber das Kreuz kann das Programm entfernt werden, und mit &amp;quot;^&amp;quot; sollen Updates gesucht werden k&amp;ouml;nnen.&lt;br /&gt;Die Anordnung funktioniert bereits, das Fenster kann skaliert werden, woraufhin alle Programme so angeordnet werden, dass nicht nach rechts, sondern nur nach oben/unten gescrollt werden muss. Die Buttons &amp;quot;?&amp;quot; und &amp;quot;+&amp;quot; bleiben immer an der gleichen Stelle, sind also auch w&amp;auml;hrend des Scrollens immer pr&amp;auml;sent. &amp;Uuml;brigens hab ich hier ein ScrollPanel (MaxGUI.ProxyGadgets) verwendet, das funktioniert nach kleineren Anlaufschwierigkeiten jetzt wunderbar.&lt;br /&gt;&lt;br /&gt;Den zweiten wichtigen Punkt hab ich vor einer guten Stunde fertiggestellt (zumindest funktionierts und hat bisher keine Bugs &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; ): Die Grundlage f&amp;uuml;r die Kommunikation zwischen den Programmen. Um das ganze wirklich modular zu machen werden TA und jedes der importierten Programme eine eigene .exe-Datei sein. Dazu hab ich jetzt ein Modul fertiggestellt, dass mir NamedPipes zur Verf&amp;uuml;gung stellt. An dieser Stelle vielen Dank an Der Eisvogel, der in diesem Thread was zum Thema gepostet hatte:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://www.blitzforum.de/forum/viewtopic.php?t=37671&amp;amp;highlight=exen&quot; target=&quot;_blank&quot;&gt;https://www.blitzforum.de/foru...light=exen&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Da ich davon keine Ahnung hatte war das ein toller Einstiegspunkt in die Thematik. Das daraus entstandene Modul ist jetzt ein klein wenig umfangreicher geworden und unterscheidet sich recht stark von dem geposteten Code, aber vom stumpfen Abschreiben hat schlie&amp;szlig;lich bisher noch keiner was gelernt.&lt;br /&gt;Sollte Interesse an dem Modul bestehen, dann schreibts in die Kommentare, dann w&amp;uuml;rd ich das zu einem sp&amp;auml;teren Zeitpunkt posten, an dem ich es &amp;ouml;fter eingesetzt hab und mir dementsprechend sicher sein kann, keine allzu &amp;uuml;blen Bugs eingebaut zu haben.&lt;br /&gt;&lt;br /&gt;So, das soll's f&amp;uuml;r diesen Eintrag erstmal gewesen sein. Als n&amp;auml;chstes werd ich ein einfaches Programm (mir schwebt da ein Einheitenrechner vor) schreiben und in TA einbinden, also versuchen, die Kommunikation zwischen den Programmen auf die Beine zu stellen und eine sinnvolle Struktur in die Sache zu bringen. Bis dahin w&amp;uuml;rd ich mich &amp;uuml;ber Kommentare jeglicher Art freuen und w&amp;uuml;nsch Euch noch eine sch&amp;ouml;ne Nacht.</description>
			<pubDate>Wed, 21 Mar 2012 00:26:35 +0100</pubDate>
		</item>

		<item>
			<title>Lang ist's her...</title>
			<link>https://www.blitzforum.de/worklogs/413/#3465</link>
			<guid>https://www.blitzforum.de/worklogs/413/#3465</guid>
			<author>Tritium</author>
			<description>...seit ich hier etwas getan habe. Ich h&amp;auml;tte liebend gern schon fr&amp;uuml;her was gemacht, aber die Uni ist nunmal wichtiger, au&amp;szlig;erdem hab ich mich das letzte Jahr wieder mehr mit Elektronik befasst, wodurch f&amp;uuml;r dieses Projekt keine Zeit blieb.&lt;br /&gt;&lt;br /&gt;Um's kurz zu machen: Ich hab mit BlitzMax angefangen, da mir Blitz3D doch irgendwann zu umst&amp;auml;ndlich wurde, was das Verwalten von Objekten anging. Und dementsprechend folgt auch die n&amp;auml;chste Konsequenz: Die einfache GUI, die ich in den ersten ein, zwei Posts pr&amp;auml;sentiert habe, wurde aufgegeben. Klar war es interessant, sowas mal selbst zu schreiben (seltsamerweise hat's auch funktioniert &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; ), allerdings hat es mich ja komplett von dem abgehalten, was ich eigentlich vorhatte.&lt;br /&gt;Deshalb benutz ich jetzt die MaxGUI, die sollte f&amp;uuml;r mein Projekt vollkommen reichen. Au&amp;szlig;erdem macht's doch mehr Spa&amp;szlig;, die eigene Arbeit direkt in die GUI einbinden und dementsprechend die Fortschritte sofort sehen zu k&amp;ouml;nnen &lt;img src=&quot;/forum/images/smiles/icon_smile.gif&quot; alt=&quot;Smile&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Desweiteren hab ich das Projekt jetzt umbenannt. Von &amp;quot;IV&amp;quot; in &amp;quot;TA&amp;quot;. Klasse, oder? &lt;img src=&quot;/forum/images/smiles/icon_biggrin.gif&quot; alt=&quot;Very Happy&quot; /&gt;  Mein Programm einfach &amp;quot;Inventarverwaltung&amp;quot; zu nennen war mir doch zu langweilig, das h&amp;ouml;rt sich so nach deutscher B&amp;uuml;rosoftware an, und das muss ja nicht sein. Die Aufl&amp;ouml;sung, was &amp;quot;TA&amp;quot; denn bedeutet, gibt's ein andernmal &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Da ich aus diesem Eintrag ein klein wenig mehr als nur &amp;quot;Hallo, ich lebe noch&amp;quot; machen m&amp;ouml;chte, will ich Euch hier mal das aktuelle Konzept und meine Ziele f&amp;uuml;r dieses Projekt vorstellen. Ich wei&amp;szlig;, hab ich im ersten Post schon erw&amp;auml;hnt, aber ein bisschen hat sich doch getan, deshalb:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;Features&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt; - &lt;b&gt;Verwalten von Bauteilen&lt;/b&gt;: Das Programm macht es m&amp;ouml;glich, jederzeit Bauteile zum Inventar hinzuzuf&amp;uuml;gen und wieder zu entfernen. So weit, so bekannt.&lt;br /&gt;&lt;br /&gt; - &lt;b&gt;Intelligente Suchfunktion&lt;/b&gt;: Dieses Feature m&amp;ouml;chte ich mit als erstes implementieren, sobald die grundlegende Verwaltung funktioniert. Sinn der Sache ist es, dass das Programm den Bauteilestand so intelligent wie m&amp;ouml;glich durchsucht. D.h., ich als Nutzer sage z.B. &amp;quot;Besitze ich 5 mal den BC547B?&amp;quot;. Normalerweise w&amp;uuml;rde jetzt die Datenbank durchsucht mit dem Ergebnis, dass die Antwort entweder Ja oder Nein lautet. Das w&amp;auml;re bei Elektronikbauteilen jedoch viel zu kurz gegriffen, denn vielleicht besitze ich keine BC547B mehr, daf&amp;uuml;r aber BC547C? Diese passen in 99% der F&amp;auml;lle genauso gut, und das Programm w&amp;uuml;rde nix davon sagen. Genau das will ich verhindern, indem das Programm nicht nur nach dem angegebenen Teil sucht, sondern die Suche auch dynamisch, je nach Anforderung, auf andere Typen ausweitet, diese bewertet und dem Nutzer am Ende des Suchvorgangs eine geordnete Liste mit Treffern pr&amp;auml;sentiert, die sehr wahrscheinlich auch zum Suchfilter passen.&lt;br /&gt;Genauso soll es m&amp;ouml;glich sein, eine &amp;quot;logische&amp;quot; Suche durchzuf&amp;uuml;hren, also nicht nach einem speziellen Teil zu suchen, sondern z.B. sagen zu k&amp;ouml;nnen &amp;quot;Ich brauche einen Kondensator mit 47&amp;micro;F und einer Spannungsfestigkeit von mind. 16V, allerdings darf er nicht axial sein, ist da was passendes im Bestand?&amp;quot;. Und hier kommt der schwierige Teil: F&amp;uuml;r so eine Suche werden definitiv mehrere Ergebnisse gefunden. Da muss das Programm jetzt selber wissen, dass es bspw. sinnvoll ist, den Preis in die Bewertung mit einzubeziehen, au&amp;szlig;erdem sollten Elektrolytkondensatoren gegen&amp;uuml;ber Tantalkondensatoren bevorzugt werden, etc.&lt;br /&gt;Ich habe hierf&amp;uuml;r schon ein grundlegendes Ger&amp;uuml;st im Kopf, bisher hab ich das aber noch nicht getestet. Auf jeden Fall ist mein Ziel, solche Beziehungen nicht direkt als Code umzusetzen, auch nicht als Skript oder so. Es gibt so viele verschiedene Beziehungen unter den Millionen von Teilen, die existieren, dass das vollkommen unm&amp;ouml;glich w&amp;auml;re, alle einzubeziehen. Mir schwebt da etwas vor, was die meiste Arbeit dem Programm &amp;uuml;berl&amp;auml;sst, dazu aber in einem anderen Post mehr.&lt;br /&gt;&lt;br /&gt; - &lt;b&gt;Information&lt;/b&gt;: Dieser Punkt wird arbeitsreich. Mir schwebt vor, dass dieses Programm nicht nur Bauteile verwalten kann, sondern auch jede Menge Hintergrundinformationen bereith&amp;auml;lt. Wenn bspw. ein Transistor mit Zustand &amp;quot;Unbekannt&amp;quot; im Bestand ist, dann soll der Nutzer ohne gro&amp;szlig;e Umwege auf einen Hilfebutton dr&amp;uuml;cken k&amp;ouml;nnen, der ihm diesen Zustand weiter erl&amp;auml;utert und in diesem speziellen Fall auch sagt, wie er den Zustand des Transistors genauer bestimmen kann.&lt;br /&gt;Au&amp;szlig;erdem m&amp;ouml;chte ich daf&amp;uuml;r sorgen, dass der Nutzer beim Hinzuf&amp;uuml;gen eines Bauteils dieses nicht erst selbst definieren muss, sondern das Programm bereits anhand weniger Angaben (grobe Eingrenzung, zu welcher Gruppe es geh&amp;ouml;rt, Kennung) erkennt, worum es sich handelt. Bei Bedarf k&amp;ouml;nnen die Standardwerte dann ge&amp;auml;ndert werden.&lt;br /&gt;Diese Arbeit wird sich nach dem Schreiben des Programms abspielen und viel Zeit in Anspruch nehmen. Wenigstens interessiere ich mich f&amp;uuml;r Elektronik, sodass die Recherche nicht zu langweilig wird &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt;  Dennoch muss ich mir diese Arbeit aufteilen, wozu ich im n&amp;auml;chsten Punkt komme:&lt;br /&gt;&lt;br /&gt; - &lt;b&gt;Flexibilit&amp;auml;t&lt;/b&gt;: Das Programm soll seine Informationen &amp;uuml;ber Pakete erhalten. Standardm&amp;auml;&amp;szlig;ig wird es &amp;uuml;ber ein Paket verf&amp;uuml;gen, das alle wichtigen Bauteile und Informationen zusammenfasst. M&amp;ouml;chte man dann aber zu einem spezielleren Gebiet genauere Informationen, dann muss das jeweilige Paket importiert werden. Au&amp;szlig;erdem m&amp;ouml;chte ich es m&amp;ouml;glich machen, dass diese Pakete gleichzeitig als Updatem&amp;ouml;glichkeit dienen.&lt;br /&gt;&lt;br /&gt;Das waren erstmal die wichtigsten Punkte. Momentan bin ich dabei, einen Paketeditor zu schreiben, der das Erstellen und Bearbeiten der oben erw&amp;auml;hnten Pakete m&amp;ouml;glich macht. Genaueres dazu gibt's in einem sp&amp;auml;teren Post.&lt;br /&gt;&lt;br /&gt;So, hoffentlich war diese Abhandlung nicht zu langweilig, vielen Dank, wenn Du diesen Text bis hierhin gelesen hast &lt;img src=&quot;/forum/images/smiles/icon_smile.gif&quot; alt=&quot;Smile&quot; /&gt; &lt;br /&gt;Ich hoffe, bald Fortschritte verk&amp;uuml;nden zu k&amp;ouml;nnen, die ich auch mit Screenshots bebildern kann. Momentan lohnt sich das noch nicht, weil es effektiv nicht viel zu sehen gibt.&lt;br /&gt;Achso, den Februar &amp;uuml;ber schreibe ich Klausuren, deswegen kann ich noch nicht absch&amp;auml;tzen, wie schnell es hier weitergeht. Ich gebe mir aber M&amp;uuml;he, m&amp;ouml;glichst schnell weiterzuarbeiten &lt;img src=&quot;/forum/images/smiles/icon_smile.gif&quot; alt=&quot;Smile&quot; /&gt; &lt;br /&gt;&lt;br /&gt;&amp;Uuml;brigens, wie &amp;auml;nder ich hier die Schriftgr&amp;ouml;&amp;szlig;e? Die Kombobox macht nix, und &amp;quot;size=&amp;quot; in eckigen Klammern scheint auch nicht zu funktionieren...</description>
			<pubDate>Sat, 28 Jan 2012 18:58:34 +0100</pubDate>
		</item>

		<item>
			<title>Das kleine 1*1 der Programmoptimierung</title>
			<link>https://www.blitzforum.de/worklogs/413/#2968</link>
			<guid>https://www.blitzforum.de/worklogs/413/#2968</guid>
			<author>Tritium</author>
			<description>Nabend,&lt;br /&gt;&lt;br /&gt;ich bin jetzt soweit, dass Textfelder auch mehrzeilig sein k&amp;ouml;nnen. Und, wie gew&amp;uuml;nscht: Per Tabulator kann man zwischen den Feldern wechseln.&lt;br /&gt;&lt;br /&gt;N&amp;auml;chstes Ziel sind dann wie gesagt die Comboboxen, aber das kann noch ein paar Tage dauern &lt;img src=&quot;/forum/images/smiles/icon_rolleyes.gif&quot; alt=&quot;Rolling Eyes&quot; /&gt; &lt;br /&gt;Ich lad auf jeden Fall eine neue Demo hoch, sobald sie funktionieren.&lt;br /&gt;&lt;br /&gt;Ich m&amp;ouml;chte diesen Eintrag aber auch nutzen, um (v.a. Anf&amp;auml;ngern) eine kleine Hilfestellung zu geben, was das Optimieren der Programmgeschwindigkeit angeht. Bisher hat mein Programm n&amp;auml;mlich ca. 10 Sekunden gebraucht, bis es geladen war (merkt man in der Demo nicht). Ich hab das vorl&amp;auml;ufig auf die Types geschoben, schlie&amp;szlig;lich benutze ich sie in diesem Projekt sehr h&amp;auml;ufig und grade zu Anfang wird da ziemlich viel erstellt. &lt;br /&gt;&lt;br /&gt;Nach etwas Suchen habe ich dann aber rausgefunden, woran es liegt:&lt;br /&gt;&lt;br /&gt;Wenn ein Fenster ge&amp;ouml;ffnet wird, wird hinter das Fenster ein Gitter aus schwarzen Pixeln gezeichnet, um die eigentliche Benutzeroberfl&amp;auml;che etwas abzudunkeln und so das Fenster zu betonen. Dieses Gitter wird jedesmal durch das Programm erstellt, wenn ein neues Fenster erzeugt wird. Die Erstellung sah zun&amp;auml;chst so aus:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Code: &lt;/b&gt;&lt;span style=&quot;font-size:0.8em; display:inline;&quot; id=&quot;showcodebox1&quot;&gt; &lt;a href=&quot;javascript&amp;#058;show_code('1')&quot;&gt;[AUSKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;span style=&quot;font-size:0.8em; display:none;&quot; id=&quot;hidecodebox1&quot;&gt; &lt;a href=&quot;javascript&amp;#058;hide_code('1')&quot;&gt;[EINKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;div id=&quot;codebox1&quot; class=&quot;codebox&quot; style=&quot;max-height: 200px;&quot; onload=&quot;check_code('1');&quot;&gt;image = CreateImage&amp;#40;GraphicsWidth&amp;#40;&amp;#41;,GraphicsHeight&amp;#40;&amp;#41;&amp;#41;&lt;br /&gt;&lt;br /&gt;SetBuffer ImageBuffer&amp;#40;image&amp;#41;&lt;br /&gt;&lt;br /&gt;For x=1 To GraphicsWidth&amp;#40;&amp;#41; Step 2&lt;br /&gt;&amp;nbsp; &amp;nbsp;For y=1 To GraphicsHeight&amp;#40;&amp;#41; Step 2&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Rect x,y,1,1&lt;br /&gt;&amp;nbsp; &amp;nbsp;Next&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;SetBuffer BackBuffer&amp;#40;&amp;#41;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Eben schnell mal hingeschrieben &lt;img src=&quot;/forum/images/smiles/icon_rolleyes.gif&quot; alt=&quot;Rolling Eyes&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Dieser Codeblock brauchte jedesmal sagenhafte 900 Millisekunden. Bei zehn Fenstern hat man da schnell was zusammen. Keine Frage, da musste nachgebessert werden. Kurzes Nachdenken erinnert an CopyRect()! Also optimieren:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Code: &lt;/b&gt;&lt;span style=&quot;font-size:0.8em; display:inline;&quot; id=&quot;showcodebox2&quot;&gt; &lt;a href=&quot;javascript&amp;#058;show_code('2')&quot;&gt;[AUSKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;span style=&quot;font-size:0.8em; display:none;&quot; id=&quot;hidecodebox2&quot;&gt; &lt;a href=&quot;javascript&amp;#058;hide_code('2')&quot;&gt;[EINKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;div id=&quot;codebox2&quot; class=&quot;codebox&quot; style=&quot;max-height: 200px;&quot; onload=&quot;check_code('2');&quot;&gt;&lt;br /&gt;Rect 1,1,1,1&lt;br /&gt;&lt;br /&gt;For x=1 To GraphicsWidth&amp;#40;&amp;#41; Step 2&lt;br /&gt;&amp;nbsp; &amp;nbsp;For y=1 To GraphicsHeight&amp;#40;&amp;#41; Step 2&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; CopyRect 0,0,2,2,x,y&lt;br /&gt;&amp;nbsp; &amp;nbsp;Next&lt;br /&gt;Next&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Alleine schon diese kleine &amp;Auml;nderung halbierte die ben&amp;ouml;tigte Zeit! Das ist aber leider immer noch zuviel, die Schleifen werden einfach zu oft ausgef&amp;uuml;hrt. Deshalb war der n&amp;auml;chste Schritt, das zu kopierende Quadrat gr&amp;ouml;&amp;szlig;er zu machen. Dazu erstellt man vor der Schleife &amp;quot;von Hand&amp;quot; ein Quadrat mit 8x8 Pixeln:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Code: &lt;/b&gt;&lt;span style=&quot;font-size:0.8em; display:inline;&quot; id=&quot;showcodebox3&quot;&gt; &lt;a href=&quot;javascript&amp;#058;show_code('3')&quot;&gt;[AUSKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;span style=&quot;font-size:0.8em; display:none;&quot; id=&quot;hidecodebox3&quot;&gt; &lt;a href=&quot;javascript&amp;#058;hide_code('3')&quot;&gt;[EINKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;div id=&quot;codebox3&quot; class=&quot;codebox&quot; style=&quot;max-height: 200px;&quot; onload=&quot;check_code('3');&quot;&gt;Rect 1,1,1,1&lt;br /&gt;Rect 1,3,1,1&lt;br /&gt;Rect 3,1,1,1&lt;br /&gt;Rect 3,3,1,1&lt;br /&gt;CopyRect 0,0,4,4,0,4&lt;br /&gt;CopyRect 0,0,4,4,4,0&lt;br /&gt;CopyRect 0,0,4,4,4,4&lt;br /&gt;&lt;br /&gt;For x=8 To GraphicsWidth&amp;#40;&amp;#41; Step 8&lt;br /&gt;&amp;nbsp; &amp;nbsp;For y=8 To GraphicsHeight&amp;#40;&amp;#41; Step 8&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; CopyRect 0,0,8,8,x,y&lt;br /&gt;&amp;nbsp; &amp;nbsp;Next&lt;br /&gt;Next&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Rechnerisch braucht diese Variante nur noch ein sechzehntel der Schleifendurchl&amp;auml;ufe der vorigen Methode! Damit bin ich vorerst zufrieden, die Erstellung eines Fensters dauert jetzt noch ca. 40ms. Das ist eigentlich immer noch recht viel, aber wir sind ja erst in der PreAlpha, gell? &lt;img src=&quot;/forum/images/smiles/icon_lol.gif&quot; alt=&quot;Laughing&quot; /&gt; &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Und wie kommt man darauf?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Naja, ein Patentrezept, wie man einen bestimmten Abschnitt schneller macht gibt es leider nicht. Was aber aus vielen Forenbeitr&amp;auml;gen hervorgeht ist, dass man sehr schnell dazu neigt, auf die Sprache zu schimpfen, bevor man nach eigenen Fehlern sucht. Doch das Finden der Programmbremsen ist gar nicht so schwierig!&lt;br /&gt;&lt;br /&gt;Das Werkzeug der Wahl sieht so aus:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Code: &lt;/b&gt;&lt;span style=&quot;font-size:0.8em; display:inline;&quot; id=&quot;showcodebox4&quot;&gt; &lt;a href=&quot;javascript&amp;#058;show_code('4')&quot;&gt;[AUSKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;span style=&quot;font-size:0.8em; display:none;&quot; id=&quot;hidecodebox4&quot;&gt; &lt;a href=&quot;javascript&amp;#058;hide_code('4')&quot;&gt;[EINKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;div id=&quot;codebox4&quot; class=&quot;codebox&quot; style=&quot;max-height: 200px;&quot; onload=&quot;check_code('4');&quot;&gt;time = MilliSecs&amp;#40;&amp;#41;&lt;br /&gt;&lt;br /&gt;;&lt;br /&gt;; Code Code Code&lt;br /&gt;;&lt;br /&gt;&lt;br /&gt;DebugLog MilliSecs&amp;#40;&amp;#41; - time&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;...also nichts weiter als eine simple Zeitmessung. Als n&amp;auml;chstes &amp;uuml;berlegt man sich, welcher Teil des Programms eigentlich langsam ist. Der Ladevorgang? Dann kommt der obige Code um die Laderoutine. Ist das Programm hingegen dauernd langsam, sollte man den Code in der Hauptschleife platzieren.&lt;br /&gt;&lt;br /&gt;Und was bringen uns die Zahlen nun? Zun&amp;auml;chst einen Vergleichswert. Wir brauchen einen Ma&amp;szlig;stab, mit dem wir den Erfolg der Optimierung messen k&amp;ouml;nnen.&lt;br /&gt;&lt;br /&gt;Jetzt folgt der etwas langweiligere Teil: Wir gehen jede Funktion durch, die an dem langsamen Abschnitt beteiligt ist. Damit l&amp;auml;sst sich schnell feststellen, welche Funktion der gr&amp;ouml;&amp;szlig;te Zeitfresser ist. Der n&amp;auml;chste und letzte Schritt ist, den Zeitmesser innerhalb der Funktion solange zu verschieben und zu verkleinern, bis wir den Teil gefunden haben, der so lange braucht. Und ab da muss man dann leider wieder nachdenken, wie der Abschnitt optimiert werden k&amp;ouml;nnte &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; &lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;Ich hoffe, dass die kleine Anleitung dem einen oder anderen ein bisschen weiterhilft!</description>
			<pubDate>Tue, 19 Oct 2010 21:26:53 +0200</pubDate>
		</item>

		<item>
			<title>Demo-Update</title>
			<link>https://www.blitzforum.de/worklogs/413/#2961</link>
			<guid>https://www.blitzforum.de/worklogs/413/#2961</guid>
			<author>Tritium</author>
			<description>Ich hab die Demo nochmal &amp;uuml;berarbeitet und eine neue Version hochgeladen. Au&amp;szlig;erdem habe ich die Radioboxen fertiggestellt, die ab jetzt ebenfalls in der Demo zu bewundern sind!&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://www.blitzforum.de/upload/file.php?id=9657&quot; target=&quot;_blank&quot;&gt;https://www.blitzforum.de/upload/file.php?id=9657&lt;/a&gt;</description>
			<pubDate>Tue, 12 Oct 2010 23:01:11 +0200</pubDate>
		</item>

		<item>
			<title>Eine kleine Demo!</title>
			<link>https://www.blitzforum.de/worklogs/413/#2957</link>
			<guid>https://www.blitzforum.de/worklogs/413/#2957</guid>
			<author>Tritium</author>
			<description>Wie versprochen also eine kleine Demo (EDIT: neue Version):&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://www.blitzforum.de/upload/file.php?id=9657&quot; target=&quot;_blank&quot;&gt;https://www.blitzforum.de/upload/file.php?id=9657&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Sieht nicht sehr spektakul&amp;auml;r aus, ist aber in Wirklichkeit sehr viel Arbeit gewesen bis hierhin! Wie gesagt, ich hab die GUI selbst geschrieben (worauf ich &amp;uuml;brigens recht stolz bin &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; ). Im Programm sieht dann z.B. eine Buttonerstellung so aus:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Code: &lt;/b&gt;&lt;span style=&quot;font-size:0.8em; display:inline;&quot; id=&quot;showcodebox5&quot;&gt; &lt;a href=&quot;javascript&amp;#058;show_code('5')&quot;&gt;[AUSKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;span style=&quot;font-size:0.8em; display:none;&quot; id=&quot;hidecodebox5&quot;&gt; &lt;a href=&quot;javascript&amp;#058;hide_code('5')&quot;&gt;[EINKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;div id=&quot;codebox5&quot; class=&quot;codebox&quot; style=&quot;max-height: 200px;&quot; onload=&quot;check_code('5');&quot;&gt;gui_createButton&amp;#40;1,&amp;quot;Standard&amp;quot;,330,516,140,30,&amp;quot;&amp;quot;,False&amp;#41;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Unter den Argumenten befinden sich u.a. der interne Name, die Position, H&amp;ouml;he, Breite und noch ein paar Dinge, dazu aber sp&amp;auml;ter mehr. Jetzt w&amp;uuml;nsche ich erstmal viel Spa&amp;szlig; mit der recht kurzen Demo &lt;img src=&quot;/forum/images/smiles/icon_biggrin.gif&quot; alt=&quot;Very Happy&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Bei Fragen stehe ich gerne zur Verf&amp;uuml;gung.</description>
			<pubDate>Mon, 11 Oct 2010 19:56:47 +0200</pubDate>
		</item>

		<item>
			<title>Erster Eintrag</title>
			<link>https://www.blitzforum.de/worklogs/413/#2950</link>
			<guid>https://www.blitzforum.de/worklogs/413/#2950</guid>
			<author>Tritium</author>
			<description>Nachdem ich jetzt ziemlich lange nichts mehr in diesem Forum gemacht habe, m&amp;ouml;chte ich Euch mal mein aktuelles Projekt vorstellen.&lt;br /&gt;&lt;br /&gt;Ich hatte vor ungef&amp;auml;hr einem halben Jahr die Idee, ein Programm zur Verwaltung elektronischer Bauteile zu schreiben. Eine kurze Suche ergab, dass sowas bereits existiert. Die bestehenden Programme hatten allerdings einige Nachteile, entweder wurden sie nicht fortgef&amp;uuml;hrt, besa&amp;szlig;en viel zu viele Funktionen oder brauchten zus&amp;auml;tzliche Dinge wie MySQL, Java ( &lt;img src=&quot;/forum/images/smiles/icon_twisted.gif&quot; alt=&quot;Twisted Evil&quot; /&gt; ) oder gar einen virtuellen Server.&lt;br /&gt;Was l&amp;auml;ge da n&amp;auml;her, als das mal mit BlitzBasic umzusetzen? &lt;img src=&quot;/forum/images/smiles/icon_biggrin.gif&quot; alt=&quot;Very Happy&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Also hab ich mich viele Abende hingesetzt und (zu meiner eigenen &amp;Uuml;berraschung) sehr viel Code produziert.&lt;br /&gt;Die erste H&amp;uuml;rde war, dass ich eine GUI brauchte. Davon gibts ja genug (die au&amp;szlig;erdem ziemlich gut sind), ich hatte aber Lust, das mal selber auszuprobieren. Das Ergebnis ist besser, als ich zun&amp;auml;chst dachte. Nat&amp;uuml;rlich hat meine GUI einige Nachteile, z.B. l&amp;auml;sst sich nur ein Fenster gleichzeitig &amp;ouml;ffnen. Au&amp;szlig;erdem ist sie - trotz aller Allgemeinhaltung - auf dieses Programm ausgerichtet, weshalb sie eher umst&amp;auml;ndlich f&amp;uuml;r allgemeine Probleme genutzt werden k&amp;ouml;nnte.&lt;br /&gt;&lt;br /&gt;Was bringt das Programm jetzt? Der Gedanke ist folgender: Als Elektronikbastler sammelt man &amp;uuml;ber die Zeit tausende von Bauteilen (die man zu 50% nie brauchen wird). Um das alles zu sortieren gibt es verschiedene Ans&amp;auml;tze: Wer sucht, der findet; das Haufenprinzip; beschriftete Marmeladengl&amp;auml;ser; Raaco-Boxen, etc.&lt;br /&gt;&lt;br /&gt;Welches Prinzip man auch benutzt, dieses Programm soll im Endeffekt folgendes machen: Man registriert jedes neu hinzugekommene Bauteil. Wenn ich dann etwas brauche, gebe ich den Typ ein und das Programm sagt mir, wieviel davon wo vorhanden ist. Zus&amp;auml;tzlich ist es m&amp;ouml;glich, Mindestmengen anzugeben, dadurch kann das Programm automatisch eine Einkaufsliste der ben&amp;ouml;tigten Teile erstellen.&lt;br /&gt;Eine weitere M&amp;ouml;glichkeit ist es, nach Ersatztypen zu suchen. Viele Teile gibt es in x-facher Ausf&amp;uuml;hrung, meist mit praktisch identischen Kennwerten. Wenn also mal ein Teil nicht vorhanden ist, dann kann das Programm nach bestimmten Kriterien suchen, ob ein Teil vorhanden ist, das als Ersatz passen w&amp;uuml;rde.&lt;br /&gt;&lt;br /&gt;Vieles davon ist im Moment allerdings noch Zukuntfsmusik, sonst w&amp;auml;r das hier ja kein Worklog. Deshalb zun&amp;auml;chst mal ein Bildchen:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;https://www.blitzforum.de/upload/file.php?id=9638&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Das ist eine der Seiten, die man in dem Programm aufrufen kann. Hier verwaltet man die Datenbanken, in denen Teile, Projekte und anderes gespeichert sind. Diese Datenbanken sind &amp;uuml;brigens jeweils in einer separaten Datei, wodurch sie auch einfach ausgetauscht und mit einer anderen Instanz des Programms ge&amp;ouml;ffnet werden k&amp;ouml;nnen.&lt;br /&gt;&lt;br /&gt;Dann will ich das Bild mal von oben nach unten durchgehen: Die Titelzeile zeigt den Namen des Programms und au&amp;szlig;erdem den Namen der aktuell geladenen Datenbank. Darunter befindet sich dann der Titel der Seite. Beschriftungen wie diese lassen sich mit meiner GUI &amp;uuml;berall platzieren und sind den Labels aus BlitzPlus sehr &amp;auml;hnlich. Ich unterscheide dabei noch zwischen statischen und dynamischen Labels. Der haupts&amp;auml;chliche Unterschied ist, dass statische Labels schneller sind, aber nicht im Nachhinein manipuliert (=verschoben, gel&amp;ouml;scht, umbenannt, etc.) werden k&amp;ouml;nnen.&lt;br /&gt;Unter der &amp;Uuml;berschrift befindet sich eine Liste. Bisher ist es m&amp;ouml;glich, Elemente hinzuzuf&amp;uuml;gen, sie wieder zu l&amp;ouml;schen, sie auszuw&amp;auml;hlen und die Liste zu sortieren. Au&amp;szlig;erdem kann man in der Liste nach oben und unten scrollen, allerdings fehlt noch ein Scrollbalken.&lt;br /&gt;Tja, darunter befinden sich dann die Buttons, zu denen es nicht viel zu sagen gibt. Draufklicken und es passiert was &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Unten befindet sich dann schlie&amp;szlig;lich eine Statuszeile. Im Moment enth&amp;auml;lt sie sowas wie die Credits in Kurzform, sp&amp;auml;ter wird sie auch Hilfetexte zu einzelnen Elementen anzeigen.&lt;br /&gt;&lt;br /&gt;Noch ein Wort zum Status: Im Moment befindet sich das Programm im PreAlpha-Status. Mein Ziel f&amp;uuml;r den Alphastatus ist es, dass man Bauteile eintragen, bearbeiten und auch grundlegend suchen kann. Alles andere (z.B. Scrollbalken) sind erstmal zweitrangig.&lt;br /&gt;Das kurzfristige Ziel ist es, Comboboxen und mehrzeilige Eingabefelder zu implementieren.&lt;br /&gt;&lt;br /&gt;So, das wars erstmal f&amp;uuml;r diesen Eintrag. Ich werde in den n&amp;auml;chsten Tagen eine Probeversion online stellen, das sagt meist mehr als Bilder und Text.</description>
			<pubDate>Sat, 09 Oct 2010 22:44:34 +0200</pubDate>
		</item>


	</channel>
</rss>
