You are not logged in.


dx4a2d

Neuer Clubber

  • "dx4a2d" started this thread

Posts: 1

Location: deutschland

Occupation: informatiker

  • Send private message

1

Saturday, May 3rd 2008, 7:21pm

Formulareingabe

Hallo,

ich habe folgendes Problem. Ich kann 1. Pascal kaum sondern nur VBA und das auch nicht gut und 2. muss ich eine art Formular erstellen.


Folgendes soll gemacht werden können:

- Eingabe der Daten z.b. Name, Vorname , Alter , Adresse
- die Daten sollen angezeigt werden können wenn ich sie eingeben habe

die eingebenen Daten sollen in einem Array gespeichert werden und das ganze soll über eine kleine Menüführung mit CASE of ausgewählt werden können.

Menüpunkt 1: Formular anzeigen
Menüpunkt 2: FOrmular erstellen
Menüüunkt 3: beenden


hoffe ihr könnt mir helfen.

gruß

dennis

2

Wednesday, May 7th 2008, 8:52am

RE: Formulareingabe

Hilft dir das als Orientierung weiter? Die Dateiarbeit ist zwar sehr umständlich gelöst (da müßte ein file of Tbuch genommen werden) aber ist ja auch schon viele Jahre her :D

Source 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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
uses crt,graph,printer;
const max=10;
type Tbuch=record
             titel:string[30];
             autor:string[20];
             seiten:integer;
             preis:real;
             da:boolean;
           end;
     Tbuecher=array[1..max] of Tbuch;
function seing:real;
var x,y,fehler:integer;
    zahl:real;
    s:string;
label anfang;
begin
  x:=wherex;
  y:=wherey;
  anfang:
  readln(s);
  val(s,zahl,fehler);
  if fehler<>0 then
  begin
    sound(800);
    delay(50);
    sound(1600);
    delay(50);
    sound(100);
    delay(50);
    nosound;
    gotoxy(x,y);
    clreol;
    goto anfang;
  end;
  seing:=zahl;
end;
var buecher:tbuecher;
procedure eingabe(var buch:tbuch);
var ch:char;
begin
  write('Bitte geben sie den Titel des Buches ein        :');
  readln(buch.titel);
  write('Bitte geben sie den Autor des Buches ein        :');
  readln(buch.autor);
  write('Bitte geben sie dei Seitenanzahl des Buches ein :');
  buch.seiten:=round(seing);
  write('Bitte geben sie den Preis des Buches ein        :');
  buch.preis:=seing;
  write('Ist das Buch in unserer Einrichtung ? (J/N)     :');
  readln(ch);
  buch.da:=upcase(ch)='J';
end;
procedure ausgabe(buch:Tbuch);
begin
  clrscr;
  writeln(lst,'Das Buch ',buch.titel,' wurde von ',buch.autor,' geschrieben.');
  writeln(lst,buch.titel,' besteht aus ',buch.seiten,' Seiten und kostet ',buch.preis:5:2,' DM.');
  if buch.da then
  writeln(lst,'Das Buch ist in unserer Einrichtung.')
  else
  writeln(lst,'Das Buch ist nicht in unserer Einrichtung.');
end;
function noeingabe:integer;
var no:integer;
begin
  clrscr;
  repeat
    gotoxy(21,wherey-1);
    write('Welche Buchnummer ? max(',max,') ');
    clreol;
    readln(no);
  until no<=max;
  noeingabe:=no;
end;
procedure save;
var f:text;
    name:string;
    lv:integer;
begin
  write('Name :');
  readln(name);
  assign(f,name+'.bbo');
  rewrite(f);
  append(f);
  for lv:=1 to max do
  begin
    writeln(f,buecher[lv].titel);
    writeln(f,buecher[lv].autor);
    writeln(f,buecher[lv].seiten);
    writeln(f,buecher[lv].preis);
    if buecher[lv].da then
    writeln(f,'1')
    else
    writeln(f,'0');
  end;
  close(f);
end;
procedure load;
var f:text;
    name:string;
    lv:integer;
    ch:char;
begin
  write('Name :');
  assign(f,name+'.bbo');
  readln(name);
  reset(f);
  for lv:=1 to max do
  begin
    readln(f,buecher[lv].titel);
    readln(f,buecher[lv].autor);
    readln(f,buecher[lv].seiten);
    readln(f,buecher[lv].preis);
    readln(f,ch);
    if ch='0' then buecher[lv].da:=false
    else buecher[lv].da:=true;
  end;
  close(f);
end;
procedure menu;
var ch:char;
begin
  buecher[1].titel:='EGOist';
  buecher[1].autor:='MIR (rus)';
  buecher[1].preis:=0.99;
  buecher[1].seiten:=13;
  buecher[1].da:=true;
  textcolor(11);
  repeat
    clrscr;
    writeln('<1> Buchdaten eingeben.');
    writeln('<2> Buchdaten ausgeben.');
    writeln('<3> Datenbank speichern.');
    writeln('<4> Datenbank laden.');
    writeln('<5> Programm verlassen.');
    ch:=readkey;
    case ch of
      '1': eingabe(buecher[noeingabe]);
      '2': begin
             ausgabe(buecher[noeingabe]);
             readln;
           end;
      '3':save;
      '4':load;
    end;
  until ch='5';
end;
begin
  menu;
end.
++++[>+++++<-]>-[>+++++>++++++<<-]>++.>.<++.

Social bookmarks

Rate this thread