Brauche hilfe für meinen "Library-Manager"

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
dysti
Beiträge: 656
Registriert: 10.02.2006 18:34
Wohnort: Schlicktown

Beitrag von dysti »

Hey Thomas,
nun zur Lösung deines Problems:
Du machst in deinem Programm den Aufruf "ExamineDirectory". Damit hast du das Verzeichnis zum Löschen, Umbenennen etc. gesperrt.
Nach diesem Befehl muß ein "FinishDirectory(#Verzeichnis1)" erfolgen.
Damit wird das Verzeichnis zur weiteren Verarbeitung wieder freigegeben.
Den Befehl muss du an mehreren Stellen im Programm einsetzen und dann funktioniert dein Programm auch so wie du es willst.
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9
Benutzeravatar
Thomas
Beiträge: 893
Registriert: 06.07.2006 19:24
Wohnort: Regensburg
Kontaktdaten:

Beitrag von Thomas »

Ok,
Danke erstmal, aber ich muss es erst noch ausprobieren.
v6.00
Benutzeravatar
Thomas
Beiträge: 893
Registriert: 06.07.2006 19:24
Wohnort: Regensburg
Kontaktdaten:

Beitrag von Thomas »

Danke nochmals,
das mit dem Library-Manager klappt jetzt im großen und ganzen.
Aber ich würd ja nix mehr schreiben, wenn alles ginge.
Wenn man auf der "Verleih"-Seite (Ansicht\Verleih) ist, kann man zwar alles löschen, nur der letzte Eintrag nicht (probiert es aus).
Und was noch schön wäre: Bei mir geht "AddKeyboardShortcut" nicht; der Compiler sagt immer "#window object not inialitzed" (Ich möchte mein HilfeFenster mit F1 aufrufen können.).

Neuer Downloadlink:

http://www.datei-upload.net/load.php?id=af58110bad5ed12
v6.00
Benutzeravatar
dysti
Beiträge: 656
Registriert: 10.02.2006 18:34
Wohnort: Schlicktown

Beitrag von dysti »

Hallo Thomas,
bevor eine Datei gelöschr werden kann, muß sie erst geschlossen werden.
Es fehlte hier der Befehl CloseFile(#File)

Code: Alles auswählen


ElseIf Wechseln = 2
              MessageRequester("Fred",GetGadgetItemText(30, GetGadgetState(30), 0))

              ;- dieser Befehl fehlte              
              CloseFile(1)
              
              If DeleteFile(#VerleihOrdner + "\" + GetGadgetItemText(30, GetGadgetState(30), 0) + ".vl") = 0
                MessageRequester("Info", "Der ausgewählte Eintrag konnte leider nicht gelöscht werden.", 0)
Hier nun zum letzten Problem.
Füge die untenstehende AddKeyboardShortcut-Zeile ein und schon geht es mit der F1-Taste:

Code: Alles auswählen

 ;-Schleife Hauptfenster
 AddKeyboardShortcut(#HauptFenster, #PB_Shortcut_F1, 40)
  Repeat
    Event_HauptFenster = WaitWindowEvent()

PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9
Benutzeravatar
Thomas
Beiträge: 893
Registriert: 06.07.2006 19:24
Wohnort: Regensburg
Kontaktdaten:

Beitrag von Thomas »

Vielen Dank! :D

Es ist nur so:
ich habe mir vor ein paar Tagen die 4.01er Version zugelegt, und von der 3.30er ist es ja ein großer Sprung. (Ich brauch halt ne Weile bis ich mich zurechtfinde.
v6.00
Antworten