Hallo an alle,
ich befinde mich derzeit in der Programmierung für ein kleines Hilfstool für mich und meine Arbeitskollegen.
Es ist nix superneuerfundenes... für uns ist es nur eine Art "Wiki" - ein Nachschlagewerk.
Im groben ist das ganze so aufgebaut, dass ich eine MainGUI erstelle, dort ein Tab drübergeballert hab mit meinen 10 TabItems und innerhalb der Tabs dann mein Inhalt reinkommt. Da ich derzeit keine Ahnung habe wie ich es anders lösen kann erstelle ich einfach Labels an den gewünschten Positionen, in die dann mein Text reinkommt.
Da ich keine richtige Tabellenfunktion (wie bei HTML) gefunden habe artet das ganze extrem aus. Entweder erstelle ich ein Label welches dann mit ganz vielen Leerzeichen gefüllt wird (innerhalb/zwischen des Textes) damit alles am richtigen Platz steht (bessere Performance, aber sehr lange Zeilen daher schlechte Übersicht) oder ich erstelle einfach ganz viele Labels welches sich aber extrem auf die Performance auswirkt (die Arbeitsrechner sind sehr langsam). Mit den ganzen vielen Labels ist das ausserdem noch ein extrem hoher Arbeitsaufwand.
Evtl habt ihr hier Tipps / Ideen wie ich das besser gestalten kann ausser mit Labels? (Bitte keine Editboxen - der Inhalt soll direkt auf der GUI liegen ohne Hintergrund wie es in einer Editbox der Fall wäre).
Zum anderen hab ich mich dumm und dämlich gesucht, was das Thema Suchfunktion für Labels angeht. Da die GUI wirklich sehr groß ist (derzeit scroll ich teilweise bis zu 20.000 Pixel nach unten) und unterschiedliche Themen auffässt würde ich ein Suchfeld bevorzugen, wo ich ein Wort/Begriff eingebe und mit Klick auf den Button Suche er dort hin springt.
Ich habe genau sowas bereits für die Editbox gefunden - aber ich brauchs ja für Labels. Gibts sowas? Hab ich zu hohe Anforderungen? Was habt Ihr für Ideen?
Hier mal ein kleiner Auschnitt aus meinem Script damit man sieht, was das für Müll mit den Labels ist:
Spoiler anzeigen
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StructureConstants.au3>
global $mainGui = GUIcreate("Wiki", 1300, 950)
[/autoit] [autoit][/autoit] [autoit]$tab = GUICtrlCreateTab(-1,-1,1300,950)
$tab2 = GUICtrlCreateTabItem("Kontakte")
GUICtrlCreateLabel("Kontakte:", 20, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 335, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("Telefon:", 350, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 535, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("E-Mail:", 550, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 835, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("Fax:", 850, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 1035, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("Zusatz:", 1050, 35, 150, 20)
GUICtrlSetFont(-1, 12, 800, 0, "Verdana")
GUICtrlCreateLabel("______________________________________________________________________________________________________________________________", 20, 45, 1250, 20)
GUICtrlSetFont(-1, 11, 800, 5, "Verdana")
GUICtrlCreateLabel("DE Customer Support:", 20, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 335, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("(049) 123456789", 350, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 535, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("email@email.com", 550, 65, 200, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 835, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("", 850, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 1035, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("", 1050, 65, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("Blabla abteilung:", 20, 85, 200, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 335, 85, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("(049) 1234556789", 350, 85, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 535, 85, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("test@test.com", 550, 85, 280, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 835, 85, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("(049)987654321", 850, 85, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("|", 1035, 85, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
GUICtrlCreateLabel("", 1050, 85, 150, 20)
GUICtrlSetFont(-1, 10, 800, 0, "Verdana")
While 1
$msg = GUIgetmsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd