![]() |
Krass-O-Mat für Lehrer
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
Ich wollte einem guten Freund (der etwas weniger Delphi Erfahrung hat als meine bescheidene) ein kleinwenig helfen ein Programm zu erstellen. Das Proggie soll einen Lehrer unterstützen. Wer kennt das als Lehrer nicht? Seid jahren die gleichen Fächer, Themen und Fragen. Alles fliegt wild verteilt in irgendwelchen Word-Dokumenten umher, wann wurde die Frage zuletzt gestellt?, bin ich noch mit meinen Fragen im Bearbeitungszeitraum, wieviele Punkte ist die Frage Wert? etc Dies alles soll mit dem erstellten tool von mir ein Ende haben. Das Proggie hat 2 Modi: a) Der Pflege Bereich Der Nutzer erstellt seinen Datenpool OHNE Datenbank. Ich hab das mit ganz normalen Dateien im ini-Style gelöst. D.H. der Dateiname = Name des Faches. Da kann ich bequem mit Sektions arbeiten, war für mich auf die Schnelle das brauchbarste. Mal legt sein Arbeitsverzeichnis fest und schon kann man sich seine Struktur in diesem Arbeitsverzeichnis erstellen, ist kein Arbeitsverzeichnis vorhanden wirds erstellt. Man kann auch eine bereits erstellte Struktur in sein Arbeitsverzeichnis übernehmen und damit weiterarbeiten. b) Der Nutzungsbereich Hier "klickt" sich der Nutzer seine Fragen zurecht, zuvor wählt er ein Fach, das zugehörige Thema und dann öffnet sich der Fragenpool mit den ganzen Parametern. Mit Checkboxen dann einfach die Fragen auswählen und man erhält Infos wann die Frage zuletzt gestellt wurde, ihren Punktewert und wie lange man Zeit hat für die Beantwortung - so kann man sich schnell z.B. eine Arbeit über Erdkunde für 45 Minuten und max. 30 erreichbaren Punkten zusammenstellen. Die Realität sieht etwas tricky aus und ich erleide an vielen kleinen Stellen Schiffbruch. Es fängt damit an dass ich die gefundenen Einträge net korrekt zählen kann, bin sogar zu blöd anscheinend ein einfaches File auf der Platte zu löschen... geht net! Wenn einer von euch mal bissle zeit und Interesse hat kann sichs gern anschauen. Den Quelltext hab ich dokumentiet, der code ist sehr simpel und mit sicherheit wirds euch profis zum lachen bringen.... Ich würd das Ding gern fertigmachen, nur kann ich einiges nicht so einfach lösen... Gruss Ajin |
Re: Krass-O-Mat für Lehrer
Zitat:
Zitat:
Zitat:
Zitat:
*Programm 'runterlad* |
Re: Krass-O-Mat für Lehrer
So die rote Pappnase ist im Schrank, es wird wieder ernst!
Mal ein auszug vom dem was net so geht: Der Fächer-löschen Button geht nicht. Der Eintrag wird zwar aus der Listbox entfernt, nur ist die Datei immer noch auf der Festplatte. Gleichzeitig soll das Selektieren eines Faches direkt die dazugehörigen Themen in die andere Listbox schreiben Hier der Code um einen eintrag auszuwählen und die Themen auszulesen
Delphi-Quellcode:
Hier der Code um das File zu löschen
////////////////////////////////////////////////////////////////////////////////
// // selektieren und staunen! // procedure Tpflege.ListIniFileClick(Sender: TObject); var titel_tmp : Array[0..200] of Char; //temporäres Array vom typ Char erzeugen iLoop, jLoop : Integer; S : String; begin eintrag:=ListIniFile.Items[ListIniFile.Itemindex]; ILoop := Getprivateprofileint('Kennung','Anzahl Themen:',0,Pchar(eintrag)); ListBox1.items.Clear; if ILoop > 0 then begin for JLoop := 1 to ILoop do Begin S := IntToStr(JLoop); if JLoop < 10 then S := '0' + S; GetprivateprofileString(PChar('Thema: ' + S),'titel','',titel_tmp,200,Pchar(eintrag)); Edit_titel.Text:=strpas(titel_tmp); ListBox1.items.Add(strpas(titel_tmp)) end; end; end;
Delphi-Quellcode:
////////////////////////////////////////////////////////////////////////////////
// // files löschen! // procedure Tpflege.sp_deleteClick(Sender: TObject); begin //Prüfen ob etwas selektiert wurde if eintrag = '' then begin Showmessage('Keinen Eintrag ausgewählt!'); exit; end else begin if MessageDlg('Soll das Fach "'+ eintrag + '" wirklich gelöscht werden?', mtConfirmation, [mbYes, mbNo],0) = mrYes then begin //eintrag löschen (das file auf der pladde, digger!) DeleteFile(eintrag); //selektierten Eintrag aus Liste enfernen! ListIniFile.DeleteSelected; //counterchen breücksichtigen label_anzahl_faecher.Caption:= IntToStr(ListIniFile.Items.Count); end; end; end; |
Re: Krass-O-Mat für Lehrer
hi,
nur mal schnell so zum loeschen von files: meistens kann man ein file nicht loeschen weil es noch geoeffnet ist. bau mal sowas in deine file loeschen precedure ein: 'wenn file noch geoeffnet dann closefile' dann erst die delete anweisung |
Re: Krass-O-Mat für Lehrer
Ok ich hab mir das mal genauer angeschaut, das Löschen klappt nun - Der Pfad zur löschenden Datei war nicht richtig. :coder2:
|
Re: Krass-O-Mat für Lehrer
Man könnte natürlich allgemein einen Fehler abfangen und das Item auch erst entfernen wenn der Löschvorgang erfolgreich war.
Delphi-Quellcode:
if DeleteFile(eintrag)
then ListIniFile.DeleteSelected else showmessage(SysErrorMessage(GetLastError)); |
Re: Krass-O-Mat für Lehrer
habe noch nicht richtig zeit gehabt, aber ich werde dann meinen beitrag editieren... (also keine kritik)
der eigentliche inhalt dieses beitrag: du hast ein semikolon vergessen. kann aber jedem passieren |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz