AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Notenprogramm

Ein Thema von raccoon · begonnen am 18. Dez 2004 · letzter Beitrag vom 20. Dez 2004
Antwort Antwort
Seite 2 von 2     12   
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Notenprogramm

  Alt 19. Dez 2004, 17:42
also die schüleranzahl ist offen denk ich mal, mann sollte soviele benutzer anlegen dürfen wie man will, und das is gerade der punkt den ich nicht verstehe, und das mit dem tsavedialog1.execute das krieg ich auch nicht hin, kann es sei da sich zu delphi 7 bei delphi 2005 da etwas geändert hat???
  Mit Zitat antworten Zitat
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Notenprogramm

  Alt 19. Dez 2004, 18:47
also mein programm hab ich jetzt soweit das es funktioniert. jetzt muss ich nur noch die werte die ich eingebe in ein array umwandeln, da fehlt mir noch die verständniss für. so desweiteren habe ich auch das stringgrid fertig und die daten kommen auch darein.

http://www.a-web.de/notenprog.rar das ist das ganze programm eine VCL anwendung für Win32...

desweiteren sieht meine speicherfunktion für die tabelle so aus:
Delphi-Quellcode:
var
  BackupName: string;
  FileHandle: Integer;
  StringLen: Integer;
  X: Integer;
  Y: Integer;
  begin
  if SaveDialog1.Execute then
  begin
    if FileExists(SaveDialog1.FileName) then
    begin
      BackupName := ExtractFileName(SaveDialog1.FileName);
      BackupName := ChangeFileExt(BackupName, '.BAK');
      if not RenameFile(SaveDialog1.FileName, BackupName) then

        raise Exception.Create('Unfähig eine Aushilfsdatei zu erschaffen.');
    end;
    FileHandle := FileCreate(SaveDialog1.FileName);
    FileWrite(FileHandle,
      Sg.ColCount, SizeOf(Sg.ColCount));
    FileWrite(FileHandle,
      Sg.RowCount, SizeOf(SG.RowCount));
    for X := 0 to SG.ColCount - 1 do
    begin

      for Y := 0 to SG.RowCount - 1 do
      begin
        StringLen := Length(SG.Cells[X,Y]);
        FileWrite(FileHandle, StringLen, SizeOf(StringLen));
        FileWrite(FileHandle,
        SG.Cells[X,Y], stringlen(SG.Cells[X,Y]));
      end;
    end;
    FileClose(FileHandle);
  end;
diese funktioniert aber nicht richtig und ich frag mich warum, er sagt auch immer das er savedialog1 nicht kennt...
  Mit Zitat antworten Zitat
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: Notenprogramm

  Alt 19. Dez 2004, 20:44
jetzt hab ich noch ein problem, wie komm ich an den quelltext vom savedialog dran?? der öffnet immer einen Test, sprich das speichern unter menü...
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#14

Re: Notenprogramm

  Alt 19. Dez 2004, 20:50
Zitat:
jetzt hab ich noch ein problem, wie komm ich an den quelltext vom savedialog dran?? der öffnet immer einen Test, sprich das speichern unter menü...
Diesen Satz verstehe ich nicht

Wozu brauchst du denn den Quelltext davon?
Und: es ist ein SaveDialog, da wird natürlich ein "Speichern unter---"-Dialog aufgerufen.


Wenn ich dich jetzt falsch verstenden habe, dann ignorier diesen Beitrag und verdeutliche bitte deine Frage.
Dann ist die Chance größer, dass die geholfen wird.
Und setze bitte jetzt den Quelltext in die Delphi-Tags, so lässt er sich nur schlecht lesen
Julian J. Pracht
  Mit Zitat antworten Zitat
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Notenprogramm

  Alt 19. Dez 2004, 20:59
arg, meine erinnerungen von selphi 7 sind nen bissel durcheinander gekommen, stimmt ja ich muss die save funktion ja in dem entsprechenden button oder ähnliches einbaune..nagut somit hat sich das erledigt..danke für die gedächtniss stütze^^
  Mit Zitat antworten Zitat
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#16

Re: Notenprogramm

  Alt 19. Dez 2004, 21:06
also den quellcoe gerade hab ich im mit dem button delphi code eingefügt, also zwischen (delphi.../delphi) jetzt keine komentare ich weiß sind falsche klammern wolt es nur veranschaulichen*g*

nunaj also wie gesagt der savedialog funktioniert nicht mit dem quellcode den ich oben angegeben habe wobei er funktionieren müsste es sei denn ich habe eine uses funktion vergessen einzufügen. desweiteren funktioniert das öffnen auch nicht so ganz, hier ist der quellcode. dort meldet er mir den fehler allocmem kennt er nicht und freemem. wurden diese geändert?

Delphi-Quellcode:
var
  iFileHandle: Integer;
  iFileLength: Integer;
  iBytesRead: Integer;
  Buffer: PChar;
  i: Integer
begin
  if OpenDialog1.Execute then
  begin
    try
      iFileHandle := FileOpen(OpenDialog1.FileName, fmOpenRead);
      iFileLength := FileSeek(iFileHandle,0,2);
      FileSeek(iFileHandle,0,0);
      Buffer := PChar(AllocMem(iFileLength + 1));
      iBytesRead := FileRead(iFileHandle, Buffer^, iFileLength);

      FileClose(iFileHandle);
      for i := 0 to iBytesRead-1 do
      begin
        Sg.RowCount := Sg.RowCount + 1;
        Sg.Cells[1,i+1] := Buffer[i];
        Sg.Cells[2,i+1] := IntToStr(Integer(Buffer[i]));
      end;
    finally
      FreeMem(Buffer);
    end;
  end;
  Mit Zitat antworten Zitat
Benutzerbild von GimbaR
GimbaR

Registriert seit: 17. Apr 2004
Ort: Weltmetropole Rostock ;)
134 Beiträge
 
Delphi 2006 Professional
 
#17

Re: Notenprogramm

  Alt 20. Dez 2004, 07:22
Zitat von raccoon:
...
begin
if SaveDialog1.Execute then
begin
if FileExists(SaveDialog1.FileName) then //<-wieso???
...
Ich versteh net, eiso du gucken willst, ob die datei existiert, sie wird ja eventuell erstellt, wenn sie net existiert...
imho ist diese zeile doch überflüssig

mfg GimbaR
Jonas
Bei dem Tempo ist es nur noch eine Frage der Zeit bis SSchäuble verlangt allen deutschen Bürgern ein Halsband zur ständigen Überwachung zu verpassen...
  Mit Zitat antworten Zitat
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#18

Re: Notenprogramm

  Alt 20. Dez 2004, 12:18
also der teil den du rauskopiert hast ist dafür das eine neue datei erstellt wird wenn noch keine vorhanden ist. wenn schon einmal gespeichert wurde speichert er sofort wieder unter dem dateinamen ab, sprich die dialogbox geht nicht auf sondern er nimmt sofort die datei vom vorherigen male.
  Mit Zitat antworten Zitat
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Notenprogramm

  Alt 20. Dez 2004, 18:07
also, ich hab mal wieder ein paar fortschritte gemacht, mein array hab ich jetzt so aufgebaut.
zuerst habe ich einen neuen Datentyp erstellt:
Delphi-Quellcode:
TSchuler = Record
    Name,Vorname,Klasse : string;
    NoteI,NoteD,NoteE,NoteM : integer;
    NotenD : extended;
    end;
Danach habe ich mir so gedacht, das wenn ich auf den speichern knopf drücke müsste er ja die daten dann in das array speichern:

Delphi-Quellcode:
private
    count: integer;
...

var
  Form1: TForm1;
  TSchulerID: array of Tschuler;
  durch:extended;
  n:integer;
Implementation
.....

procedure TForm1.Button1Click(Sender: TObject);
begin
  TSchulerID[count].Name := edit1.text;
  TSchulerID[count].Vorname := edit2.text;
  TSchulerID[count].Klasse := edit3.text;
  TSchulerID[count].NoteD := STRtoInt(edit4.text);
  TSchulerID[count].NoteE := STRtoInt(edit5.text);
  TSchulerID[count].NoteM := STRtoInt(edit6.text);
  TSchulerID[count].NoteI := STRtoInt(edit7.text);
  TSchulerID[count].NotenD := STRtoInt(edit8.text);
  count:= count+1;
...

procedure TForm1.FormCreate(Sender: TObject);
begin
 n:=1;
 count:=0;
end;
so siehts bisher dann aus, nun kommt die fehlermeldung Objektverweis wurde nicht auf Objektinstanz festgelegt.
da ich von delhpi 2005 nur die englische hilfe habe (trial) hab ich natürlich auch nichts zu objektverweis oder instanz gefunden.

könnte mir vielleicht einer sagen ob ich irgendwo vergessen habe was richtig zu deklarieren?

mfg raccoon
  Mit Zitat antworten Zitat
raccoon

Registriert seit: 18. Dez 2004
Ort: Herne
56 Beiträge
 
Delphi 7 Enterprise
 
#20

Re: Notenprogramm

  Alt 20. Dez 2004, 23:46
hmm, ich komm nciht weiter der fehler bleibt und bleibt, ich habe schon versucht das array ein bisschen zu überlisten indem ich aus dem TSchulerID noch einen eigenen datentyp erzeugt habe und dann eine weitere Variable SchulerId erstellt, geht auch nicht also ich bin ratlos, ich sitzt jetzt schon 5 stunden an diesem einen fehler und das wurmt^^

mfg raccoon
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz