[Delphi]Wat is er dan nu precies verkeerd?

Pagina: 1
Acties:
  • 46 views sinds 30-01-2008

  • engessa
  • Registratie: Juni 2001
  • Niet online
Ben een behoorlijke newbie in programmeren maar ik heb het volgende getikt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
unit Unit3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DM, ComCtrls, ClientShow, Buttons, Grids, DBGrids,
  DBCtrls;

type
  TForm3 = class(TForm)
    Label15: TLabel;
    Label20: TLabel;
    Label16: TLabel;
    Label21: TLabel;
    TaakNaamEdit: TEdit;
    TaakDeadlineEdit: TEdit;
    TaakStatusEdit: TEdit;
    TaakToegewezenEdit: TEdit;
    Button1: TButton;
    procedure saveTaakForm();
    procedure resetTaakForm();
    procedure Button1Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form3: TForm3;

implementation

uses Mainform;

{$R *.dfm}

procedure saveTaakForm();
begin
      //check if required values are entered...
  if ((TaakNaamEdit.Value <> '') and
      (TaakDeadlineEdit.Value <> '') and
      (TaakStatusEdit.Value <> '') and
      (TaakToegewezenEdit.Value <> ''))
      then with DataM do begin
       //add data to table...
      TakenTable.Append;
      TakenTableProjId.Value := ProjTableId.Value;
      TakenTableNaam.Value := TaakNaamEdit.Text;
      TakenTableDeadline.Value := TaakDeadlineEdit.Text;
      TakenTableStatus.Value := TaakStatusEdit.Text;
      TakenTableToegewezen.Value := TaakToegewezenEdit.Text;

      TakenTable.Post;

    // remove window data...
    resetTaakForm();

  end else begin
    ShowMessage('Nog niet alle velden zijn ingevuld.');
  end;
end;

procedure resetTaakForm();
begin

    TaakNaamEdit.Text := '';
    TaakDeadlineEdit.Text := '';
    TaakStatusEdit.Text := '';
    TaakToegewezenEdit.Text := '';

procedure TForm3.Button1Click(Sender: TObject);
begin
saveTaakForm()
end;

end.

En nu krijg ik de volgende foutmeldingen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Build
  [Error] Unit3.pas(43): Undeclared identifier: 'TaakNaamEdit'
  [Error] Unit3.pas(43): ')' expected but identifier 'Text' found
  [Error] Unit3.pas(51): Missing operator or semicolon
  [Error] Unit3.pas(52): Missing operator or semicolon
  [Error] Unit3.pas(52): Undeclared identifier: 'TaakDeadlineEdit'
  [Error] Unit3.pas(52): Missing operator or semicolon
  [Error] Unit3.pas(53): Missing operator or semicolon
  [Error] Unit3.pas(53): Undeclared identifier: 'TaakStatusEdit'
  [Error] Unit3.pas(53): Missing operator or semicolon
  [Error] Unit3.pas(54): Missing operator or semicolon
  [Error] Unit3.pas(54): Undeclared identifier: 'TaakToegewezenEdit'
  [Error] Unit3.pas(54): Missing operator or semicolon
  [Error] Unit3.pas(56): Missing operator or semicolon
  [Error] Unit3.pas(59): Undeclared identifier: 'resetTaakForm'
  [Error] Unit3.pas(69): Undeclared identifier: 'TaakNaamEdit'
  [Error] Unit3.pas(69): Missing operator or semicolon
  [Error] Unit3.pas(70): Undeclared identifier: 'TaakDeadlineEdit'
  [Error] Unit3.pas(70): Missing operator or semicolon
  [Error] Unit3.pas(71): Undeclared identifier: 'TaakStatusEdit'
  [Error] Unit3.pas(71): Missing operator or semicolon
  [Error] Unit3.pas(72): Undeclared identifier: 'TaakToegewezenEdit'
  [Error] Unit3.pas(72): Missing operator or semicolon
  [Error] Unit3.pas(74): Statement expected but 'PROCEDURE' found
  [Error] Unit3.pas(21): Unsatisfied forward or external declaration: 'TForm3.saveTaakForm'
  [Error] Unit3.pas(22): Unsatisfied forward or external declaration: 'TForm3.resetTaakForm'
  [Fatal Error] test_mathijs.dpr(8): Could not compile used unit 'Hadiebla\Unit3.pas'

Waarom? Ik snap het niet, ben bang dat het heel simpel is maar ik kan het niet uit de help halen nog een paar andere mensen met meer ervaring kunnen mij vertellen wat er verkeerd is. Iemand anders wel?

  • .oisyn
  • Registratie: September 2000
  • Nu online

.oisyn

Moderator Devschuur®

Demotivational Speaker

Euh ja, misschien is een cursus Delphi een verstandigere keuze? Ik heb namelijk het idee dat je maar wat probeert (je declareert TaakNaamEdit als een type, niet als een variabele bijvoorbeeld). Het lijkt me verstandig dat je eerst de basisbeginselen van Delphi doorkrijgt voordat je naar GoT komt met je problemen :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

Lees de errors eens goed, die achterste het eerst:
[Error] Unit3.pas(21): Unsatisfied forward or external declaration: 'TForm3.saveTaakForm'
[Error] Unit3.pas(22): Unsatisfied forward or external declaration: 'TForm3.resetTaakForm'
Hier staat letterlijk: "jij hebt beweerd dat er in TForm3 die 2 functies gingen komen maar die zijn er nooit gekomen".

Dat klopt, want je hebt ze gedeclareerd als zijnde onderdeel van TForm3 en ze vervolgens globaal geimplementeerd. Zie wat dat betreft het verschil tussen de implementatie van je Button1Click functie en die andere 2 functies.

Daar je in de implementatie ineens die functies globaal hebt zitten en niet als onderdeel van TForm3 is het niet zo vreemd dat ze alle membervariabelen van TForm3 niet kunnen benaderen: en dat zijn alle andere errors die je ziet :)

Hiermee moet je het wel op kunnen lossen, maar zoals oisyn al zegt is dit iets te basaal, en had je dit met zelf de errors lezen ook wel op kunnen lossen :Y)

Professionele website nodig?


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

Professionele website nodig?


Dit topic is gesloten.