Gambas: Wünsche und Anregungen
Wenn Sie eine Programmidee oder einen Programmwunsch haben, denn Sie selbst nicht in Gambas realisieren können, weil Sie keine Zeit oder nicht genügend Gambas Know How haben, dann schreiben Sie es hier her.
Vielleicht findet sich ja jemand , der das Ganze realisiert.
Abbildung: Der kleine g und der große G
Irgendwie fühlte sich der kleine g bei seiner Arbeit ständig beobachtet.
Ich würde gern einen Index erstellen.
[Bearbeiten]Wie kann ich dies realisieren?
Was soll der Index indizieren ? Eine Datenbank ? Etwas genauere Informationen sind notwendig um hier zu helfen.
-Der Index soll ebenso wie die Gambas Hilfe ein Tutorial in einem Hilfefenster anzeigen.
Unter http://de.wikibooks.org/wiki/Gambas:_Html steht ein Gambas Html Browser. Wenn man die Hilfeseiten als HTML Seiten erstellt, kann man ihn schön als Hilfetutorial nutzen.
Zeilen oder Zeichenkette aus Datei ausschneiden
[Bearbeiten]Ich lese eine ganze Datei mit READ ein und suche später nach einen bestimmten String. Bei dessen auftreten lese ich die ganze Zeile ein. Nun möchte ich diese Zeile löschen und die nachfolgende an die vorherige Zeile anfügen, sodaß meine Datei nicht unnötig groß wird. Läßt sich dies mit den derzeitigen Befehlscode bewerkstelligen? Ich finde auch keinen Befehl mit dem ich eine bestimmte Zeile ansprechen kann, um an diese noch einen Zeichenstring anzuhängen.
Rho: Ich fange einmal an das Problem zu zerlegen. Als erstes habe ich den READ Befehl genauer beschrieben.
Siehe http://de.wikibooks.org/wiki/Gambas:_Datei#Daten_einlesen_mit_READ
Zur weiteren Lösung des Problems müßte es aber etwas konkreter beschrieben werden. Ein Beispiel wäre hilfreich.
Benötigt werden: CommandButton, TextArea und ID.txt-File.
Als Bsp folgendes Programm:
i AS Integer ii AS Integer hfile AS File PUBLIC SUB Form_Open() OPEN "ID.txt" FOR READ AS #hFile READ #hFile,tar1.Text,Lof(hFile) END PUBLIC SUB cmd1_Click() i = Instr(tar1.Text, "A") IF i > 0 THEN ii = Instr(tar1.Text, "\n",i) IF ii > 0 THEN tar1.Text = Mid(tar1.Text,i,ii-i) ENDIF ENDIF END
In "ID.txt" stehen mehrere Zeichenstrings mit je nachfolgendem CR.
Nun möchte ich einen davon ausschneiden. Jedoch den geänderten
Text nicht in einer TextArea ablegen, sondern wieder in ID.txt
abspeichern. Fehlermeldung bei öffnen der File mit CREATE oder WRITE
kommt ein "Access Forbitten". Zugriffsrechte der File wurden aber
auf "all" gesetzt.
Gibt es Befehle die dies vereinfachen, oder besser gesagt an benötigte
Zeile springen diese ausschneiden und nachfolgende Zeile hochrücken?
Weiteres Beispiel wäre:
ListBox, CommandButton
txt as String PUBLIC SUB cmd1_Click() txt = libx1[0].Text libx1.Remove(0) END PUBLIC SUB Form_Open() libx1.Add("aaaaa\n") libx1.Add("bbbbb\n") libx1.Add("aaaaa\n") libx1.Add("bbbbb\n") libx1.Add("aaaaa\n") END
Dies scheint mir die Beste Möglichkeit zu sein, jedoch erhebt sich die
Frage welche Methode die geringste Bearbeitungszeit benötigt oder
das Programm verlangsamt sollte die ListBox auch noch angezeigt werden.
Die Liste könnte dabei sogar bis über 100 Einträge beinhalten.