# % & & % # # % % & (
|
|
- Helga Frank
- vor 6 Jahren
- Abrufe
Transkript
1
2 # % & & % # # % % & ( ) +!
3
4 ! # # % # #&! () () +,!. /))0))) # 1 /))0))) )78 9,)78 /1: ; 9 +:)) ; 6) 9 +,)
5 4 # 4 # 1 # 1 % #&! 0
6 ! < #!! 0! = > # %!? 1 1! Α 6)1) 78,)1) 78 Α /1: ; +:))1) ; Β 6) +,) Β / +, # 8
7 !!
8
9
10
11
12
13
14
15
16
17
18
19
20 Biomonitor.dpr :41:36 Seite 1 von 1 1: program Biomonitor; 2: 3: uses 4: Forms, 5: main in 'main.pas' {Form1}, 6: balken in 'balken.pas', 7: siebenseg in 'siebenseg.pas', 8: zeiger in 'zeiger.pas', 9: anzeige in 'anzeige.pas', 10: help in 'help.pas' {Form2}, 11: dia_temp in 'dia_temp.pas' {Form3}, 12: dia_ohm in 'dia_ohm.pas' {Form4}, 13: dia_puls in 'dia_puls.pas' {Form5}, 14: liniendia in 'liniendia.pas', 15: balkendia in 'balkendia.pas', 16: zeitdia in 'zeitdia.pas'; 17: 18: {$R *.res} 19: 20: begin 21: Application.Initialize; 22: Application.CreateForm(TForm1, Form1); 23: Application.CreateForm(TForm2, Form2); 24: Application.CreateForm(TForm3, Form3); 25: Application.CreateForm(TForm4, Form4); 26: Application.CreateForm(TForm5, Form5); 27: Application.Run; 28: end.
21 main.pas :54:04 Seite 1 von 5 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: main letzte Änderung: * 4: * * 5: * Funktion: Hauptprogramm, erstellt die Hauptform, mit der * 6: * Übersicht der Messwerte. Von hier wird das * 7: * komplette Programm gesteuert. * 8: * Anzeigen der Diagramme, der Hilfe, starten der * 9: * Simulation. * 10: * * 11: * Eingaben: Button.Click zut Steuerung * 12: * Ausgaben: Körpertemperatur, Körperwiderstand, Puls * 13: * jeweils als digitale Siebensegment- Anzeige, * 14: * als Balkenanzeige und als Zeigerinstrument. * 15: * * 16: * Aufruf von: - * 17: * Ruft auf: siebenseg, balken, zeiger * 18: * dia_ohm, dia_temp, dia_puls * 19: * help * 20: * * 21: * Coyright 2011 by Dominik Lönarz * 22: ****************************************************************} 23: 24: unit main; 25: 26: interface 27: 28: uses 29: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 30: Dialogs, StdCtrls, Menus, ExtCtrls; 31: 32: type 33: TForm1 = class(tform) 34: MainMenu1: TMainMenu; 35: Beenden1: TMenuItem; 36: Hilfe1: TMenuItem; 37: Label1: TLabel; 38: Label2: TLabel; 39: PaintBox1: TPaintBox; 40: PaintBox2: TPaintBox; 41: PaintBox3: TPaintBox; 42: PaintBox4: TPaintBox; 43: PaintBox5: TPaintBox; 44: PaintBox6: TPaintBox; 45: PaintBox7: TPaintBox; 46: PaintBox8: TPaintBox; 47: PaintBox9: TPaintBox; 48: Label3: TLabel; 49: Label4: TLabel; 50: Button1: TButton; 51: Button2: TButton; 52: Timer1: TTimer; 53: Simulieren1: TMenuItem; 54: Diagramme1: TMenuItem; 55: Krpertemperatur1: TMenuItem; 56: Krperwiderstand1: TMenuItem; 57: Puls1: TMenuItem; 58: Button3: TButton; 59: Button4: TButton; 60: Button5: TButton; 61: procedure Button2Click(Sender: TObject); 62: procedure Button1Click(Sender: TObject); 63: procedure FormCreate(Sender: TObject); 64: function Sim_Temperatur():real; 65: function Sim_Widerstand():real; 66: function Sim_Puls():integer; 67: procedure Timer1Timer(Sender: TObject); 68: procedure Hilfe1Click(Sender: TObject); 69: procedure Button3Click(Sender: TObject); 70: procedure Button4Click(Sender: TObject); 71: procedure Button5Click(Sender: TObject); 72: procedure FormClose(Sender: TObject; var Action: TCloseAction); 73: 74: private 75: { Private-Deklarationen } 76: public 77: { Public-Deklarationen }
22 main.pas :54:04 Seite 2 von 5 78: end; 79: 80: type 81: Tmess = record //Erstellen einer Variable des Types Tmess, mit den Variablen 82: Temperatur: real; // Temperatur 83: Widerstand: real; // Körperwiderstand 84: Puls:integer; // Puls 85: end; 86: 87: var 88: Form1: TForm1; 89: Daten : array [ ] of Tmess; //Erstellen eines Arrays (Daten) mit der Variable T_mess (für mehr als 24h) 90: 91: implementation 92: 93: uses 94: anzeige, zeiger, siebenseg, balken, help, dia_temp, dia_ohm, dia_puls; 95: 96: var 97: seg1, seg2, seg3, seg4, seg5, seg6, seg7, seg8, seg9, seg10, seg11: Tsiebenseg; 98: balken1, balken2, balken3: Tbalken; 99: zeiger1, zeiger2, zeiger3: Tzeiger; 100: 101: {$R *.dfm} 102: 103: procedure TForm1.FormCreate(Sender: TObject); 104: // Das passiert wenn die main Form erzeugt wird. 105: // Erzeugen der verwendeten Objekte (Siebensegmentanzeigen, Balkeninstrumente, Zeigerinstrumente) 106: // Initalisierung des Arrays (Array mit "0" befüllen) 107: var 108: i:integer; 109: begin 110: // Erzeugen der Objekte für Körpertemperatur 111: seg1:=tsiebenseg.erzeugen(10,30,4,clred,paintbox1.canvas); 112: seg2:=tsiebenseg.erzeugen(60,30,4,clred,paintbox1.canvas); 113: seg3:=tsiebenseg.erzeugen(120,30,4,clred,paintbox1.canvas); 114: balken1:=tbalken.erzugen(1,50,30,185,clred,paintbox2.canvas); 115: zeiger1:=tzeiger.erzeugen(30,40,' C',paintbox3,clred); 116: // Erzeugen der Objekte für Körperwiderstand 117: seg4:=tsiebenseg.erzeugen(10,30,4,clgreen,paintbox4.canvas); 118: seg5:=tsiebenseg.erzeugen(60,30,4,clgreen,paintbox4.canvas); 119: seg6:=tsiebenseg.erzeugen(110,30,4,clgreen,paintbox4.canvas); 120: seg7:=tsiebenseg.erzeugen(160,30,4,clgreen,paintbox4.canvas); 121: seg8:=tsiebenseg.erzeugen(220,30,4,clgreen,paintbox4.canvas); 122: balken2:=tbalken.erzugen(1,50,30,185,clgreen,paintbox5.canvas); 123: zeiger2:=tzeiger.erzeugen(1.5,2500,'kohm',paintbox6,clgreen); 124: // Erzeugen der Objekte für Puls 125: seg9:=tsiebenseg.erzeugen(10,30,4,clblue,paintbox7.canvas); 126: seg10:=tsiebenseg.erzeugen(60,30,4,clblue,paintbox7.canvas); 127: seg11:=tsiebenseg.erzeugen(110,30,4,clblue,paintbox7.canvas); 128: balken3:=tbalken.erzugen(1,50,30,185,clblue,paintbox8.canvas); 129: zeiger3:=tzeiger.erzeugen(30,240,'bpm',paintbox9,clblue); 130: 131: for i:=1 to do // Array mit nullen füllen; (Initalisierung) 132: Begin 133: daten[i].temperatur:=0; 134: daten[i].widerstand:=0; 135: daten[i].puls:=0; 136: end; 137: end; 138: 139: function TForm1.Sim_Temperatur():real; 140: // Funktion zur Simulation der Körpertemperatur 141: // Zufallswert wird erzeugt (30 C- 40 C) und zu den Anzeigen weitergeleitet 142: var 143: s,h,z,e :integer; //Variabeln für drei stellige Zahl(s), Hunderter, Zehner, Einer, s=gesamtzahl 144: begin 145: s:=random(100)+300; 146: 147: paintbox1.refresh; 148: 149: if s <=999 then // Wenn die Zahl größer "999" ist wird "---" angezeigt 150: Begin 151: h:=trunc(s/100); //Hunderter
23 main.pas :54:04 Seite 3 von 5 152: z:=trunc(s/10)-(h*10); //Zehner 153: e:=trunc(s-(h*100)-(z*10)); //Einer 154: seg1.anzeigen(h); //Hunderter auf Seg1 155: seg2.segment(7); //Punkt 156: seg2.anzeigen(z); //Zehner auf Seg2 157: seg3.anzeigen(e); //Einer auf Seg3 158: end 159: else 160: Begin 161: seg1.segment(6); //Zahl zu groß, dann "----" 162: seg2.segment(6); 163: seg3.segment(6); 164: end; 165: 166: paintbox2.refresh; 167: balken1.anzeigen(round(s-300)); //Anzeige auf Balkeninstrument 168: 169: paintbox3.refresh; 170: zeiger1.anzeigen(s/10); //Anzeige suf Zeigerinstrument 171: 172: result:=s/10; //Rückgabe des Simulierten Messwertes, zum speichern im Array 173: end; 174: 175: function TForm1.Sim_Widerstand():real; 176: // Funktion zur Simulation der Körperwiderstand 177: // Zufallswert wird erzeugt (1,5kOhm kOhm) und zu den Anzeigen weitergeleitet 178: var 179: s,zt,t,h,z,e :integer; //Variabeln für fünf stellige Zahl(s),Zehntausender, Tausender, Hunderter, Zehner, Einer 180: begin 181: s:=random(24985)+15; //Messwert erzeugen 182: 183: paintbox4.refresh; 184: 185: if s <=99999 then // Wenn die Zahl größer "99999" ist wird "-----" angezeigt 186: Begin 187: zt:=trunc(s/10000); //Zehntausender 188: t:=trunc(s/1000)-(zt*10); //Tausender 189: h:=trunc(s/100)-(zt*100)-(t*10); //Hunderter 190: z:=trunc(s/10)-(zt*1000)-(t*100)-(h*10); //Zehner 191: e:=trunc(s-(zt*10000)-(t*1000)-(h*100)-(z*10)); //Einer 192: seg4.anzeigen(zt); //Zehntausender auf Seg4 193: seg5.anzeigen(t); //Tausender auf Seg5 194: seg6.anzeigen(h); //Hunderter auf Seg6 195: seg7.segment(7); //Punkt 196: seg7.anzeigen(z); //Zehner Segment 7 197: seg8.anzeigen(e); //Einer Segment 8 198: end 199: else 200: Begin 201: seg4.segment(6); //Zahl zu groß, dann "-----" 202: seg5.segment(6); 203: seg6.segment(6); 204: seg7.segment(6); 205: seg8.segment(6); 206: end; 207: 208: paintbox5.refresh; 209: balken2.anzeigen(round((s-15)*100/24985)); 210: 211: paintbox6.refresh; 212: zeiger2.anzeigen(s/10); 213: 214: result:=s/10; 215: end; 216: 217: function Tform1.Sim_Puls():integer; 218: // Funktion zur Simulation des Pulses 219: // Zufallswert wird erzeugt (30bpm - 240bpm) und zu den Anzeigen weitergeleitet 220: // *** bpm [Beats Per Minute] *** 221: var 222: s,h,z,e :integer; //Variabeln für drei stellige Zahl(s), Hunderter, Zehner, Einer 223: begin 224: s:=random(210)+30; //Messwert erzeugen 225: 226: paintbox7.refresh; 227:
24 main.pas :54:04 Seite 4 von 5 228: if s <=999 then // Wenn die Zahl größer "999" ist wird "---" angezeigt 229: Begin 230: h:=trunc(s/100); //Hunderter 231: z:=trunc(s/10)-(h*10); //Zehner 232: e:=trunc(s-(h*100)-(z*10)); //Einer 233: seg9.anzeigen(h); //Hunderter auf Seg9 234: seg10.anzeigen(z); //Zehner auf Seg10 235: seg11.anzeigen(e); //Einer auf Seg11 236: end 237: else 238: Begin 239: seg9.segment(6); //Zahl zu groß, dann "---" 240: seg10.segment(6); 241: seg11.segment(6); 242: end; 243: 244: paintbox8.refresh; 245: balken3.anzeigen(round((s-30)*100/210)); 246: 247: paintbox9.refresh; 248: zeiger3.anzeigen(s); 249: 250: result:=s; 251: end; 252: 253: procedure TForm1.Button1Click(Sender: TObject); //Simulieren 254: // Startet die Simulation 255: // Timer wird gestartet, Diagramme freigeschaltet, Array wird mit Zufallswerten gefüllt 256: var 257: i :integer; 258: begin 259: randomize; //Zufallsgenerator initalisieren 260: timer1.enabled:=true; 261: button3.enabled:=true; 262: button4.enabled:=true; 263: button5.enabled:=true; 264: Diagramme1.Enabled:=true; 265: 266: for i:=1 to do // Array befüllen 267: Begin 268: daten[i].temperatur:=(random(100)+300)/10; //Temperaturen von 30,0 C - 40,0 C 269: daten[i].widerstand:=(random(24985)+15)/10; //Widerstände von 1,5kOhm kOhm (2,5MOhm) 270: daten[i].puls:=random(210)+30; // Puls von 30bpm - 240bpm 271: end; 272: end; 273: 274: procedure TForm1.Timer1Timer(Sender: TObject); //Timer gesetzt auf 1000ms 275: // Ausführen der Simulation 276: // Jede Sekunde wird ein neuer Messwert erzeugt 277: // Neue Messwerte werden an erste Stelle ins Array geschrieben 278: var 279: i:integer; 280: begin 281: for i:= downto 2 do daten[i]:=daten[i-1]; // Werte im Array eins nach rechts schieben 282: //Erstes Array-Feld mit aktuellen Daten füttern 283: daten[1].temperatur:=sim_temperatur(); 284: daten[1].widerstand:=sim_widerstand(); 285: daten[1].puls:=sim_puls(); 286: end; 287: 288: procedure TForm1.Hilfe1Click(Sender: TObject); //Aufruf der Hilfe 289: //Form 2 anzeigen, dort steht die Hilfe. 290: begin 291: form2.show; 292: end; 293: 294: procedure TForm1.Button3Click(Sender: TObject); // Diagramm Temperatur aufrufen 295: // Form 3 anzeigen, Zeitdiagramm für die Temperatur 296: begin 297: form3.show; 298: end; 299: 300: procedure TForm1.Button4Click(Sender: TObject); // Diagramm Widerstand aufrufen 301: // Form 4 beinhaltet das Zeitdiagramm des Körperwiderstandes 302: begin 303: form4.show; 304: end;
25 main.pas :54:04 Seite 5 von 5 305: 306: procedure TForm1.Button5Click(Sender: TObject); // Diagramm Puls aufrufen 307: // Form 5 ist für das Diagramm Puls 308: begin 309: form5.show 310: end; 311: 312: procedure TForm1.Button2Click(Sender: TObject); // Beenden 313: //Beendet das Programm 314: begin 315: Form1.Close; 316: end; 317: 318: procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); // Das passiert beim Beenden 319: //Destructoren aufrufen, form3,4,5 Zerstören (für destructor der Zeitdiagramme) 320: begin 321: seg1.entfernen; 322: seg2.entfernen; 323: seg3.entfernen; 324: seg4.entfernen; 325: seg5.entfernen; 326: seg6.entfernen; 327: seg7.entfernen; 328: seg8.entfernen; 329: seg9.entfernen; 330: seg10.entfernen; 331: seg11.entfernen; 332: zeiger1.entfernen; 333: zeiger2.entfernen; 334: zeiger3.entfernen; 335: balken1.entfernen; 336: balken2.entfernen; 337: balken3.entfernen; 338: 339: form2.close; 340: 341: form3.destroy; 342: form4.destroy; 343: form5.destroy 344: end; 345: 346: end.
26 dia_temp.pas :18:26 Seite 1 von 2 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: dia_temp letzte Änderung: * 4: * * 5: * Funktion: Erstellt die Form zur Anzeige der Diagramme * 6: * * 7: * Eingaben: RadioButton.Click zut Steuerung * 8: * Ausgaben: Zeitdiagramm * 9: * * 10: * Aufruf von: main * 11: * Ruft auf: balkendia, liniendia * 12: ****************************************************************} 13: // Kommentare siehe Unit dia_ohm 14: // ähnlicher bis gleicher Inhalt wie bei Diagramm Widerstand 15: unit dia_temp; 16: 17: interface 18: 19: uses 20: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 21: Dialogs, StdCtrls, ExtCtrls; 22: 23: type 24: TForm3 = class(tform) 25: Button1: TButton; 26: PaintBox1: TPaintBox; 27: Timer1: TTimer; 28: GroupBox1: TGroupBox; 29: RadioButton1: TRadioButton; 30: RadioButton2: TRadioButton; 31: GroupBox2: TGroupBox; 32: RadioButton3: TRadioButton; 33: RadioButton4: TRadioButton; 34: RadioButton5: TRadioButton; 35: procedure Button1Click(Sender: TObject); 36: procedure FormCreate(Sender: TObject); 37: procedure Timer1Timer(Sender: TObject); 38: procedure FormDestroy(Sender: TObject); 39: private 40: { Private-Deklarationen } 41: public 42: { Public-Deklarationen } 43: end; 44: 45: var 46: Form3: TForm3; 47: 48: implementation 49: 50: uses 51: anzeige, zeitdia, liniendia, balkendia, main; 52: 53: var 54: linien_temp: TLiniendia; 55: balken_temp: TBalkendia; 56: 57: {$R *.dfm} 58: 59: procedure TForm3.FormCreate(Sender: TObject); 60: begin 61: linien_temp:=tliniendia.erzeugen(30,40,' C',clred,PaintBox1); 62: Balken_temp:=TBalkendia.erzeugen(30,40,' C',clred,PaintBox1); 63: end; 64: 65: procedure TForm3.Timer1Timer(Sender: TObject); 66: var 67: i,j,h,hh: integer; 68: mwh,mw: real; 69: help: array[1..62] of real; 70: begin 71: if RadioButton3.Checked=true then 72: begin 73: for i:=1 to 62 do help[i]:=main.daten[i].temperatur; 74: if radiobutton1.checked=true then 75: linien_temp.anzeigen(help,60,'sec') 76: else 77: balken_temp.anzeigen(help,60,'sec');
27 dia_temp.pas :18:26 Seite 2 von 2 78: end 79: else if Radiobutton4.Checked=true then 80: Begin 81: h:=1; 82: mwh:=0; 83: hh:=0; 84: for i:=1 to 62 do 85: begin 86: for j:=h to h+59 do 87: begin 88: mwh:=mwh+main.daten[j].temperatur; 89: hh:=j; 90: end; 91: mw:=mwh/60; 92: mwh:=0; 93: help[i]:=mw; 94: h:=hh+1; 95: end; 96: if radiobutton1.checked=true then 97: linien_temp.anzeigen(help,60,'min') 98: else 99: balken_temp.anzeigen(help,60,'min'); 100: end 101: else 102: Begin 103: h:=1; 104: mwh:=0; 105: hh:=0; 106: for i:=1 to 26 do 107: begin 108: for j:=h to h+3599 do 109: begin 110: mwh:=mwh+main.daten[j].temperatur; 111: hh:=j; 112: end; 113: mw:=mwh/3600; 114: mwh:=0; 115: help[i]:=mw; 116: h:=hh+1; 117: end; 118: if radiobutton1.checked=true then 119: linien_temp.anzeigen(help,24,'h') 120: else 121: balken_temp.anzeigen(help,24,'h'); 122: end; 123: end; 124: 125: procedure TForm3.Button1Click(Sender: TObject); 126: begin 127: form3.hide; 128: end; 129: 130: procedure TForm3.FormDestroy(Sender: TObject); 131: begin 132: linien_temp.entfernen; 133: balken_temp.entfernen; 134: end; 135: 136: end.
28 dia_ohm.pas :18:36 Seite 1 von 2 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: dia_ohm letzte Änderung: * 4: * * 5: * Funktion: Erstellt die Form zur Anzeige der Diagramme * 6: * * 7: * Eingaben: RadioButton.Click zut Steuerung * 8: * Ausgaben: Zeitdiagramm * 9: * * 10: * Aufruf von: main * 11: * Ruft auf: balkendia, liniendia * 12: ****************************************************************} 13: 14: unit dia_ohm; 15: 16: interface 17: 18: uses 19: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 20: Dialogs, StdCtrls, ExtCtrls; 21: 22: type 23: TForm4 = class(tform) 24: Button1: TButton; 25: Timer1: TTimer; 26: PaintBox1: TPaintBox; 27: GroupBox1: TGroupBox; 28: RadioButton1: TRadioButton; 29: RadioButton2: TRadioButton; 30: GroupBox2: TGroupBox; 31: RadioButton3: TRadioButton; 32: RadioButton4: TRadioButton; 33: RadioButton5: TRadioButton; 34: procedure Button1Click(Sender: TObject); 35: procedure Timer1Timer(Sender: TObject); 36: procedure FormCreate(Sender: TObject); 37: procedure FormDestroy(Sender: TObject); 38: private 39: { Private-Deklarationen } 40: public 41: { Public-Deklarationen } 42: end; 43: 44: var 45: Form4: TForm4; 46: 47: implementation 48: 49: uses 50: anzeige, zeitdia, liniendia, balkendia, main; 51: 52: var 53: linien_ohm: TLiniendia; 54: balken_ohm: TBalkendia; 55: 56: {$R *.dfm} 57: 58: procedure TForm4.FormCreate(Sender: TObject); //wenn die Form 4 erstellt wird 59: //zwei Objekte (Liniendiagramm, Balkendiagramm) erzeugen 60: begin 61: linien_ohm:=tliniendia.erzeugen(1.5,2500,'kohm',clgreen,paintbox1); 62: balken_ohm:=tbalkendia.erzeugen(1.5,2500,'kohm',clgreen,paintbox1); 63: end; 64: 65: procedure TForm4.Timer1Timer(Sender: TObject);// Timer (1 Sekunde) 66: // zum Neuzeichnen der Diagramme 67: // Auswahl per Radiobutton ob Liniendiagramm oder Balkendiagramm 68: // Auswahl per Radiobutton ob sec, min, h angezeigt wird. 69: // Bei Sekunde werden die letzten 60 Sekunden angezeigt 70: // Bei Minuten werden die letzten 60 Minuten angezeigt, wobei immer 60 sec zu einer Minute als Mittelwert zusammengefasst werden. 71: // Bei Stunden werden die letzten 24 Stunden angezeigt, wobei immer 3600 sec zu einer Stunde gemittelt werden. 72: var 73: i,j,h,hh: integer; //Variabeln für Zähler (i,j) und Hilfsvariabeln (h,hh) 74: mwh,mw: real; //Varibele für den Mittelwert (mw) und Hilfsvariable für Mittelwert(mwh). 75: help: array[1..62] of real;// Hilfsarray für Mittlwerte zu speichern
29 dia_ohm.pas :18:36 Seite 2 von 2 76: begin 77: if RadioButton3.Checked=true then 78: begin // Sekunden Diagramm 79: for i:=1 to 62 do help[i]:=main.daten[i].widerstand; 80: if radiobutton1.checked=true then 81: linien_ohm.anzeigen(help,60,'sec') //Liniendiagramm 82: else 83: balken_ohm.anzeigen(help,60,'sec'); //Balkendiagramm 84: end 85: else if Radiobutton4.Checked=true then 86: Begin // Minuten Diagramm 87: //Initalisirung der Variabeln 88: h:=1; 89: mwh:=0; 90: hh:=0; 91: // Mittelwertbildung, befüllen des Hilfsarrays 92: for i:=1 to 62 do 93: begin 94: for j:=h to h+59 do 95: begin 96: mwh:=mwh+main.daten[j].widerstand; //Mittelwert bilden 97: hh:=j; 98: end; 99: mw:=mwh/60; 100: mwh:=0; 101: help[i]:=mw; //aktueller Mittelwert in das Array schreiben 102: h:=hh+1; 103: end; 104: if radiobutton1.checked=true then 105: linien_ohm.anzeigen(help,60,'min') //Liniendiagramm Minuten anzeigen 106: else 107: balken_ohm.anzeigen(help,60,'min'); // Balkendiagramm Minuten anzeigen 108: end 109: else 110: Begin // Stunden Diagramm 111: // Variabeln initalisieren 112: h:=1; 113: mwh:=0; 114: hh:=0; 115: //Mittelwertbildung, befüllen des Arrays 116: for i:=1 to 26 do 117: begin 118: for j:=h to h+3599 do 119: begin 120: mwh:=mwh+main.daten[j].widerstand; 121: hh:=j; 122: end; 123: mw:=mwh/3600; 124: mwh:=0; 125: help[i]:=mw; 126: h:=hh+1; 127: end; 128: if radiobutton1.checked=true then 129: linien_ohm.anzeigen(help,24,'h') //Liniendiagramm Stunden 130: else 131: balken_ohm.anzeigen(help,24,'h');// Balkendiagramm Stunden 132: end; 133: end; 134: 135: procedure TForm4.Button1Click(Sender: TObject); // Widerstandsdiagramm schließen 136: begin 137: form4.hide; 138: end; 139: 140: procedure TForm4.FormDestroy(Sender: TObject); // Form "zerstören" 141: // Aufruf der Destuctoren wenn Formblatt "zerstört wird" 142: // Aufruf bei Form1.close 143: begin 144: linien_ohm.entfernen; 145: balken_ohm.entfernen; 146: end; 147: 148: end.
30 dia_puls.pas :18:32 Seite 1 von 2 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: dia_puls letzte Änderung: * 4: * * 5: * Funktion: Erstellt die Form zur Anzeige der Diagramme * 6: * * 7: * Eingaben: RadioButton.Click zut Steuerung * 8: * Ausgaben: Zeitdiagramm * 9: * * 10: * Aufruf von: main * 11: * Ruft auf: balkendia, liniendia * 12: ****************************************************************} 13: // Kommentare siehe Unit dia_ohm 14: // ähnlicher bis gleicher Inhalt wie bei Diagramm Widerstand 15: unit dia_puls; 16: 17: interface 18: 19: uses 20: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 21: Dialogs, StdCtrls, ExtCtrls; 22: 23: type 24: TForm5 = class(tform) 25: Button1: TButton; 26: Timer1: TTimer; 27: PaintBox1: TPaintBox; 28: GroupBox1: TGroupBox; 29: RadioButton1: TRadioButton; 30: RadioButton2: TRadioButton; 31: GroupBox2: TGroupBox; 32: RadioButton3: TRadioButton; 33: RadioButton4: TRadioButton; 34: RadioButton5: TRadioButton; 35: procedure Button1Click(Sender: TObject); 36: procedure Timer1Timer(Sender: TObject); 37: procedure FormCreate(Sender: TObject); 38: procedure FormDestroy(Sender: TObject); 39: private 40: { Private-Deklarationen } 41: public 42: { Public-Deklarationen } 43: end; 44: 45: var 46: Form5: TForm5; 47: 48: implementation 49: 50: uses 51: anzeige, zeitdia, liniendia, balkendia, main; 52: 53: var 54: linien_puls: TLiniendia; 55: balken_puls: TBalkendia; 56: 57: {$R *.dfm} 58: 59: procedure TForm5.FormCreate(Sender: TObject); 60: begin 61: linien_puls:=tliniendia.erzeugen(30,240,'bpm',clblue,paintbox1); 62: balken_puls:=tbalkendia.erzeugen(30,240,'bpm',clblue,paintbox1); 63: end; 64: 65: procedure TForm5.Timer1Timer(Sender: TObject); 66: var 67: i,j,h,hh: integer; 68: mwh,mw: real; 69: help: array[1..62] of real; 70: begin 71: if RadioButton3.Checked=true then 72: begin 73: for i:=1 to 62 do help[i]:=main.daten[i].puls; 74: if radiobutton1.checked=true then 75: linien_puls.anzeigen(help,60,'sec') 76: else 77: balken_puls.anzeigen(help,60,'sec');
31 dia_puls.pas :18:32 Seite 2 von 2 78: end 79: else if Radiobutton4.Checked=true then 80: Begin 81: h:=1; 82: mwh:=0; 83: hh:=0; 84: for i:=1 to 62 do 85: begin 86: for j:=h to h+59 do 87: begin 88: mwh:=mwh+main.daten[j].puls; 89: hh:=j; 90: end; 91: mw:=mwh/60; 92: mwh:=0; 93: help[i]:=mw; 94: h:=hh+1; 95: end; 96: if radiobutton1.checked=true then 97: linien_puls.anzeigen(help,60,'min') 98: else 99: balken_puls.anzeigen(help,60,'min'); 100: end 101: else 102: Begin 103: h:=1; 104: mwh:=0; 105: hh:=0; 106: for i:=1 to 26 do 107: begin 108: for j:=h to h+3599 do 109: begin 110: mwh:=mwh+main.daten[j].puls; 111: hh:=j; 112: end; 113: mw:=mwh/3600; 114: mwh:=0; 115: help[i]:=mw; 116: h:=hh+1; 117: end; 118: if radiobutton1.checked=true then 119: linien_puls.anzeigen(help,24,'h') 120: else 121: balken_puls.anzeigen(help,24,'h'); 122: end; 123: end; 124: 125: procedure TForm5.Button1Click(Sender: TObject); 126: begin 127: form5.hide; 128: end; 129: 130: procedure TForm5.FormDestroy(Sender: TObject); 131: begin 132: linien_puls.entfernen; 133: balken_puls.entfernen; 134: end; 135: 136: end.
32 help.pas :34:42 Seite 1 von 1 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: help letzte Änderung: * 4: * * 5: * Funktion: Erstellt die Form zur Anzeige der Hilfe * 6: * * 7: * Eingaben: - * 8: * Ausgaben: Text * 9: * * 10: * Aufruf von: main * 11: * Ruft auf: * 12: ****************************************************************} 13: 14: unit help; 15: 16: interface 17: 18: uses 19: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 20: Dialogs, StdCtrls; 21: 22: type 23: TForm2 = class(tform) 24: Label1: TLabel; 25: Button1: TButton; 26: Label2: TLabel; 27: procedure FormShow(Sender: TObject); 28: procedure Button1Click(Sender: TObject); 29: private 30: { Private-Deklarationen } 31: public 32: { Public-Deklarationen } 33: end; 34: 35: var 36: Form2: TForm2; 37: 38: implementation 39: 40: {$R *.dfm} 41: 42: procedure TForm2.FormShow(Sender: TObject); // Wenn Form angezeigt wird 43: // Hilfe Text zum Pogramm 44: begin 45: label2.caption:= 46: 'Biomonitor Version 1.1.3'+#10+#10+ 47: 'Copyright 2011 written by Dominik Lönarz'+#10+#10+ 48: 'Das Programm dient zur grafischen Veranschaulichung,'+#10+ 49: 'verschiedener Werte des menschlichen Körper. Im Detail sind das,'+#10+ 50: 'die Körpertemperatur, der Körperwiderstand und der Puls.'+#10+ 51: 'Die Werte werden angezeigt als Zahlenwert, als Balkendiagramm,'+#10+ 52: 'in Prozent, und als Zeigerdiagramm. Die Werte werden sekündlich aktualisiert.'+#10+ 53: 'Gestartet wird die Simulation per Druck auf Simulation.'+#10+ 54: 'Zusätzlich besteht die Möglichkeit den zeitlichen Verlauf der Werte anzuzeigen.'+#10+ 55: 'Der Benutzer hat hier die Möglichkeit zwischen einem Linien oder Balkendiagramm zu wählen.'+#10+ 56: 'Weiterhin kann zwischen Sekunden, Minuten und Stunden umgestellt werden.'+#10+#10+ 57: 'Die einzelnen Diagramme können über das Menü oder über Buttons,'+#10+ 58: 'direkt unter den Messwerten, ausgewählt werden.'+#10+ 59: 'Per Radiobuttons kann die Anzeige umgeschaltet werden.'+#10+ 60: 'Anzeige "Sekunden" zeigt die letzten 60 Sekunden an.'+#10+ 61: 'Anzeige "Minuten" mittelt 60 Sekunden zu einer Minute und zeigt 60 Minuten an.'+#10+ 62: 'Anzeige "Stunden" fast 60 Minuten zu einer Stunde zusammen und zeigt einen Tag an.' 63: ; 64: end; 65: 66: procedure TForm2.Button1Click(Sender: TObject);// Form schliessen 67: begin 68: Form2.close; 69: end; 70: 71: end.
33 anzeige.pas :57:10 Seite 1 von 1 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: anzeige letzte Änderung: * 4: * Oberklasse: TObject * 5: * Klasse: TAnzeige * 6: * Unterklasse: TZeitdia, TZeiger, TBalken, TSiebenseg * 7: * * 8: * Funktion: entfernen (Destructor) * 9: * * 10: * Eingaben: - * 11: * Ausgaben: - * 12: * * 13: * Aufruf von: - * 14: * Ruft auf: - * 15: ****************************************************************} 16: 17: unit anzeige; 18: 19: interface 20: 21: uses 22: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 23: Dialogs, StdCtrls, Menus, ExtCtrls; 24: 25: type 26: Tanzeige =class (TObject) 27: x:integer; //X-Position 28: y:integer; //Y-Position 29: farbe:tcolor; //Farbe 30: 31: destructor entfernen; 32: end; 33: 34: implementation 35: 36: destructor Tanzeige.entfernen; 37: // Destructor zum entfernen aller Objekte 38: Begin 39: end; 40: 41: end.
34 siebenseg.pas :57:32 Seite 1 von 4 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: siebenseg letzte Änderung: * 4: * Oberklasse: TAnzeige * 5: * Klasse: TSiebenseg * 6: * Unterklasse: - * 7: * * 8: * Funktion: erzeugen (Constructor) * 9: * anzeigen (zeigt eine Zahl von 0-9 auf einer * 10: * Siebensegment-Anzeige) * 11: * segment (stellt einzelne Segmente dar + Punkt) * * 12: * * 13: * Eingaben: xpos, ypos, width, color, place, i * 14: * Ausgaben: Siebensegment-Anzeige * 15: * * 16: * Aufruf von: main * 17: * Ruft auf: - * 18: ****************************************************************} 19: {Klasse Siebensegment-Anzeige 20: 21: anzeigen -> Zeigt Zahlen als Siebensegment-Anzeige an : segment -> Zeichnet einzelne Segmente : 24: 5 25: : 6 27: 1 3 o7 28: 2 29: o=a; 1=b; 2=c; 3=d; 4=e; 5=f; 6=g; 30: Constructor Erzeugen enthält die X-Position, Y-Position, Größe, Farbe, Zeichenort} 31: 32: unit siebenseg; 33: 34: interface 35: 36: uses 37: Graphics, anzeige; 38: 39: type 40: TSiebenseg = class (Tanzeige) 41: Private 42: //Eigenschaften 43: g:integer; //Größe 44: ort:tcanvas; //Ort 45: Public 46: //Methoden 47: constructor erzeugen(xpos,ypos,width: Integer; color: TColor; place: TCanvas);// Hier werden später die Werte der Variabeln übergeben 48: procedure anzeigen (i:integer); //Hier haben wir eine procedure Namens "anzeigen" 49: procedure segment (i:integer); // Zum ansteuern einzelner Segmente 50: end; 51: 52: implementation 53: 54: constructor TSiebenseg.erzeugen(xpos,ypos,width: Integer; color: TColor; place: TCanvas); 55: begin 56: x:=xpos; //Der Variable x wird der Wert xpos aus der Klammer zu gweiesen, xpos wird durch Aufruf des Constructors zugewiesen 57: y:=ypos; 58: g:=width; 59: farbe:=color; 60: ort:=place; 61: end; 62: 63: procedure TSiebenseg.anzeigen(i:integer); //Hier steht was in der procedure passiert! Procedure zum anzeigen von Zahlen... 64: Begin 65: with ort do begin // "with ort do" soll heißen, dass vor den nächsten Befehlen, der "ort" voran gestellt wird 66: Pen.Width:=g; // Zeichenstift größe wird übergeben 67: Pen.Color:=clsilver; // Erst einmal grau, damit man eine Anzeige sieht, die allerdings nicht "leuchtet" 68: // Ab hier werden die "grauen" Segmente gezeichnet 69: MoveTo(x+1*g,y+1*g); //a 70: LineTo(x+1*g,y+7*g); 71: MoveTo(x+1*g,y+8*g); //b
35 siebenseg.pas :57:32 Seite 2 von 4 72: LineTo(x+1*g,y+14*g); 73: MoveTo(x+2*g,y+round(14.5*g)); //c 74: LineTo(x+8*g,y+round(14.5*g)); 75: MoveTo(x+9*g,y+14*g); //d 76: LineTo(x+9*g,y+8*g); 77: MoveTo(x+9*g,y+7*g); //e 78: LineTo(x+9*g,y+1*g); 79: MoveTo(x+8*g,y+round(0.5*g)); //f 80: LineTo(x+2*g,y+round(0.5*g)); 81: MoveTo(x+8*g,y+round(7.5*g)); //g 82: LineTo(x+2*g,y+round(7.5*g)); 83: 84: Pen.Color:=farbe; // Jetzt wirds bunt... 85: end; 86: 87: case i of // case of "i", i wird später beim aufruf der procedure mit übergeben 88: 0: Begin // für i=0 jetzt werden die einzelnen Segmente bunt eingefärbt 89: with ort do begin //Zahl 0 90: MoveTo(x+1*g,y+1*g); //a 91: LineTo(x+1*g,y+7*g); 92: MoveTo(x+1*g,y+8*g); //b 93: LineTo(x+1*g,y+14*g); 94: MoveTo(x+2*g,y+round(14.5*g)); //c 95: LineTo(x+8*g,y+round(14.5*g)); 96: MoveTo(x+9*g,y+14*g); //d 97: LineTo(x+9*g,y+8*g); 98: MoveTo(x+9*g,y+7*g); //e 99: LineTo(x+9*g,y+1*g); 100: MoveTo(x+8*g,y+round(0.5*g)); //f 101: LineTo(x+2*g,y+round(0.5*g)); 102: end; 103: end; 104: 1: Begin //Zahl 1 105: with ort do begin 106: MoveTo(x+9*g,y+14*g); //d 107: LineTo(x+9*g,y+8*g); 108: MoveTo(x+9*g,y+7*g); //e 109: LineTo(x+9*g,y+1*g); 110: end; 111: end; 112: 2: Begin //Zahl 2 113: with ort do begin 114: MoveTo(x+1*g,y+8*g); //b 115: LineTo(x+1*g,y+14*g); 116: MoveTo(x+2*g,y+round(14.5*g)); //c 117: LineTo(x+8*g,y+round(14.5*g)); 118: MoveTo(x+9*g,y+7*g); //e 119: LineTo(x+9*g,y+1*g); 120: MoveTo(x+8*g,y+round(0.5*g)); //f 121: LineTo(x+2*g,y+round(0.5*g)); 122: MoveTo(x+8*g,y+round(7.5*g)); //g 123: LineTo(x+2*g,y+round(7.5*g)); 124: end; 125: end; 126: 3: Begin //Zahl 3 127: with ort do begin 128: MoveTo(x+2*g,y+round(14.5*g)); //c 129: LineTo(x+8*g,y+round(14.5*g)); 130: MoveTo(x+9*g,y+14*g); //d 131: LineTo(x+9*g,y+8*g); 132: MoveTo(x+9*g,y+7*g); //e 133: LineTo(x+9*g,y+1*g); 134: MoveTo(x+8*g,y+round(0.5*g)); //f 135: LineTo(x+2*g,y+round(0.5*g)); 136: MoveTo(x+8*g,y+round(7.5*g)); //g 137: LineTo(x+2*g,y+round(7.5*g)); 138: end; 139: end; 140: 4: Begin //Zahl 4 141: with ort do begin 142: MoveTo(x+1*g,y+1*g); //a 143: LineTo(x+1*g,y+7*g); 144: MoveTo(x+9*g,y+14*g); //d 145: LineTo(x+9*g,y+8*g); 146: MoveTo(x+9*g,y+7*g); //e
36 siebenseg.pas :57:32 Seite 3 von 4 147: LineTo(x+9*g,y+1*g); 148: MoveTo(x+8*g,y+round(7.5*g)); //g 149: LineTo(x+2*g,y+round(7.5*g)); 150: end; 151: end; 152: 5: Begin //Zahl 5 153: with ort do begin 154: MoveTo(x+1*g,y+1*g); //a 155: LineTo(x+1*g,y+7*g); 156: MoveTo(x+2*g,y+round(14.5*g)); //c 157: LineTo(x+8*g,y+round(14.5*g)); 158: MoveTo(x+9*g,y+14*g); //d 159: LineTo(x+9*g,y+8*g); 160: MoveTo(x+8*g,y+round(0.5*g)); //f 161: LineTo(x+2*g,y+round(0.5*g)); 162: MoveTo(x+8*g,y+round(7.5*g)); //g 163: LineTo(x+2*g,y+round(7.5*g)); 164: end; 165: end; 166: 6: Begin //Zahl 6 167: with ort do begin 168: MoveTo(x+1*g,y+1*g); //a 169: LineTo(x+1*g,y+7*g); 170: MoveTo(x+1*g,y+8*g); //b 171: LineTo(x+1*g,y+14*g); 172: MoveTo(x+2*g,y+round(14.5*g)); //c 173: LineTo(x+8*g,y+round(14.5*g)); 174: MoveTo(x+9*g,y+14*g); //d 175: LineTo(x+9*g,y+8*g); 176: MoveTo(x+8*g,y+round(0.5*g)); //f 177: LineTo(x+2*g,y+round(0.5*g)); 178: MoveTo(x+8*g,y+round(7.5*g)); //g 179: LineTo(x+2*g,y+round(7.5*g)); 180: end; 181: end; 182: 7: Begin //Zahl 7 183: with ort do begin 184: MoveTo(x+9*g,y+14*g); //d 185: LineTo(x+9*g,y+8*g); 186: MoveTo(x+9*g,y+7*g); //e 187: LineTo(x+9*g,y+1*g); 188: MoveTo(x+8*g,y+round(0.5*g)); //f 189: LineTo(x+2*g,y+round(0.5*g)); 190: end; 191: end; 192: 8: Begin //Zahl 8 193: with ort do begin 194: MoveTo(x+1*g,y+1*g); //a 195: LineTo(x+1*g,y+7*g); 196: MoveTo(x+1*g,y+8*g); //b 197: LineTo(x+1*g,y+14*g); 198: MoveTo(x+2*g,y+round(14.5*g)); //c 199: LineTo(x+8*g,y+round(14.5*g)); 200: MoveTo(x+9*g,y+14*g); //d 201: LineTo(x+9*g,y+8*g); 202: MoveTo(x+9*g,y+7*g); //e 203: LineTo(x+9*g,y+1*g); 204: MoveTo(x+8*g,y+round(0.5*g)); //f 205: LineTo(x+2*g,y+round(0.5*g)); 206: MoveTo(x+8*g,y+round(7.5*g)); //g 207: LineTo(x+2*g,y+round(7.5*g)); 208: end; 209: end; 210: 9: Begin //Zahl 9 211: with ort do begin 212: MoveTo(x+1*g,y+1*g); //a 213: LineTo(x+1*g,y+7*g); 214: MoveTo(x+2*g,y+round(14.5*g)); //c 215: LineTo(x+8*g,y+round(14.5*g)); 216: MoveTo(x+9*g,y+14*g); //d 217: LineTo(x+9*g,y+8*g); 218: MoveTo(x+9*g,y+7*g); //e 219: LineTo(x+9*g,y+1*g); 220: MoveTo(x+8*g,y+round(0.5*g)); //f 221: LineTo(x+2*g,y+round(0.5*g)); 222: MoveTo(x+8*g,y+round(7.5*g)); //g 223: LineTo(x+2*g,y+round(7.5*g));
37 siebenseg.pas :57:32 Seite 4 von 4 224: end; 225: end; 226: end; 227: end; 228: 229: procedure TSiebenseg.segment(i:integer); //Procedure zum anzeigen einzelner Segmente 230: Begin 231: with ort do begin // "with ort do" soll heißen, dass vor den nächsten Befehlen, der "ort" voran gestellt wird 232: Pen.Width:=g; // Zeichenstift größe wird übergeben 233: Pen.Color:=clsilver; // Erst einmal grau, damit man eine Anzeige sieht, die allerdings nicht "leuchtet" 234: // Ab hier werden die "grauen" Segmente gezeichnet 235: MoveTo(x+1*g,y+1*g); //a 236: LineTo(x+1*g,y+7*g); 237: MoveTo(x+1*g,y+8*g); //b 238: LineTo(x+1*g,y+14*g); 239: MoveTo(x+2*g,y+round(14.5*g)); //c 240: LineTo(x+8*g,y+round(14.5*g)); 241: MoveTo(x+9*g,y+14*g); //d 242: LineTo(x+9*g,y+8*g); 243: MoveTo(x+9*g,y+7*g); //e 244: LineTo(x+9*g,y+1*g); 245: MoveTo(x+8*g,y+round(0.5*g)); //f 246: LineTo(x+2*g,y+round(0.5*g)); 247: MoveTo(x+8*g,y+round(7.5*g)); //g 248: LineTo(x+2*g,y+round(7.5*g)); 249: Ellipse(x+11*g,y+14*g,x+12*g,y+15*g); 250: 251: Pen.Color:=farbe; // Jetzt wirds bunt : end; 253: 254: case i of // case of "i", i wird später beim aufruf der procedure mit übergeben 255: 0: Begin // (für i=0) jetzt werden die einzelnen Segmente bunt eingefärbt 256: with ort do begin 257: MoveTo(x+1*g,y+1*g); //a 258: LineTo(x+1*g,y+7*g); 259: end; 260: end; 261: 1: Begin 262: with ort do begin 263: MoveTo(x+1*g,y+8*g); //b 264: LineTo(x+1*g,y+14*g); 265: end; 266: end; 267: 2: Begin 268: with ort do begin 269: MoveTo(x+2*g,y+round(14.5*g)); //c 270: LineTo(x+8*g,y+round(14.5*g)); 271: end; 272: end; 273: 3: Begin 274: with ort do begin 275: MoveTo(x+9*g,y+14*g); //d 276: LineTo(x+9*g,y+8*g); 277: end; 278: end; 279: 4: Begin 280: with ort do begin 281: MoveTo(x+9*g,y+7*g); //e 282: LineTo(x+9*g,y+1*g); 283: end; 284: end; 285: 5: Begin 286: with ort do begin 287: MoveTo(x+8*g,y+round(0.5*g)); //f 288: LineTo(x+2*g,y+round(0.5*g)); 289: end; 290: end; 291: 6: Begin 292: with ort do begin 293: MoveTo(x+8*g,y+round(7.5*g)); //g 294: LineTo(x+2*g,y+round(7.5*g)); 295: end; 296: end;
38 siebenseg.pas :57:32 Seite 5 von 4 297: 7: Begin //Punkt 298: with ort do begin 299: Ellipse(x+11*g,y+14*g,x+12*g,y+15*g); 300: end; 301: end; 302: end; 303: end; 304: 305: end. // Das war es schon
39 balken.pas :59:58 Seite 1 von 1 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: balken letzte Änderung: * 4: * Oberklasse: TAnzeige * 5: * Klasse: TBalken * 6: * Unterklasse: - * 7: * * 8: * Funktion: erzeugen (Constructor) * 9: * anzeigen (zeigt Realwerte auf einer * 10: * Balkenanzeige) * 11: * * 12: * Eingaben: xpos, ypos, hoehe, breite, color, place, i * 13: * Ausgaben: Balkenanzeige * 14: * * 15: * Aufruf von: main * 16: * Ruft auf: - * 17: ****************************************************************} 18: 19: unit balken; 20: 21: interface 22: 23: uses 24: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 25: Dialogs, ExtCtrls, ComCtrls, StdCtrls, anzeige; 26: 27: type 28: TBalken = Class (Tanzeige) 29: private 30: h: integer; //Höhe des Balkens 31: b: integer; //Breite des Balkens 32: ort: TCanvas; 33: public 34: constructor erzugen(xpos,ypos,hoehe,breite: integer; color:tcolor; place:tcanvas); 35: procedure anzeigen (i:real); 36: end; 37: 38: implementation 39: 40: constructor TBalken.erzugen(xpos,ypos,hoehe,breite: integer; color:tcolor; place:tcanvas); 41: //Constructor zum erzeugen des Balkeninstrumentes 42: Begin 43: x:=xpos; 44: y:=ypos; 45: h:=hoehe; 46: b:=breite; 47: farbe:=color; 48: ort:=place; 49: end; 50: 51: procedure TBalken.anzeigen(i:real); 52: // Anzeige Procedure für Balkeninstrument 53: Begin 54: with ort do Begin 55: // Messwertbalken 56: brush.color:=farbe; 57: pen.color:=farbe; 58: rectangle(x+1,y+1,trunc(1+(i*b)/100),y+h); 59: // Grundgerüst 60: brush.color:=clbtnface; 61: pen.color:=clblack; 62: MoveTo(x,y); 63: LineTo(x,y+h); 64: LineTo(x+b,y+h); 65: LineTo(x+b,y); 66: LineTo(x,y); 67: //Anzeigewert in Prozent 68: TextOut(x+b+3,trunc(y+(h/2)-6),floattostr(i)+' %'); 69: end; 70: end; 71: 72: end.
40 zeiger.pas :12:02 Seite 1 von 2 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: zeiger letzte Änderung: * 4: * Oberklasse: TAnzeige * 5: * Klasse: TZeiger * 6: * Unterklasse: - * 7: * * 8: * Funktion: erzeugen (Constructor) * 9: * anzeigen (zeigt Realwerte auf einem * 10: * Zeigerinstrument) * 11: * * 12: * Eingaben: min_wert, max_wert, einheit, zeichenort, color, i * 13: * Ausgaben: Zeigerinstrument * 14: * * 15: * Aufruf von: main * 16: * Ruft auf: - * 17: ****************************************************************} 18: 19: unit zeiger; 20: 21: interface 22: 23: uses 24: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 25: Dialogs, ExtCtrls, Math, anzeige; 26: 27: type 28: TZeiger = class (Tanzeige) 29: Private 30: min: real; 31: max: real; 32: s: string; 33: ort: TPaintbox; 34: Public 35: constructor erzeugen (min_wert,max_wert: real; einheit:string; zeichenort: TPaintbox; color:tcolor); 36: procedure anzeigen(i:real); 37: end; 38: 39: implementation 40: 41: constructor TZeiger.erzeugen (min_wert,max_wert: real; einheit:string; zeichenort: TPaintbox; color:tcolor); 42: // Constructor Initalisieren der Objekte 43: begin 44: min:=min_wert; 45: max:=max_wert; 46: s:=einheit; 47: ort:=zeichenort; 48: farbe:=color; 49: end; 50: 51: procedure TZeiger.anzeigen(i:real); 52: // Procedure zum Anzeigen des Zeigerinstrumentes 53: var 54: k,j,ch,cw,x,y:integer; 55: begin 56: //Grundlagen schaffen 57: ort.refresh; 58: ort.canvas.pen.width:=1; 59: ort.canvas.pen.color:=clblack; 60: ch:=ort.clientheight; 61: cw:=ort.clientwidth; 62: //Grundriss zeichnen hier linke Aussenlinie 63: ort.canvas.pen.color:=clblack; 64: ort.canvas.pen.width:=1; 65: x:=round ((cw/2)-(cos(degtorad(30))*(cw/2))); 66: y:=round (ch-1-(sin(degtorad(30))*(cw/2))); 67: ort.canvas.moveto (round(cw/2),ch-1); 68: ort.canvas.lineto (x,y); 69: //Minimalen Wert anzeigen + Einheit 70: ort.canvas.textout(x+25,y,floattostr(min)+' '+s); 71: // Grundriss zeichen hier rechte Aussenlinie 72: x:=round ((cw/2)-(cos(degtorad(150))*(cw/2))); 73: y:=round (ch-1-(sin(degtorad(150))*(cw/2))); 74: ort.canvas.moveto (round(cw/2),ch-1); 75: ort.canvas.lineto (x,y);
41 zeiger.pas :12:02 Seite 2 von 2 76: // Maximalen Wert und Einheit schreiben 77: ort.canvas.textout(x-55,y,floattostr(max)+' '+s); 78: // Zwischenwert anzeigen 79: x:=round ((cw/2)-(cos(degtorad(90))*(cw/2))); 80: y:=round (ch-1-(sin(degtorad(90))*(cw/2))); 81: 82: ort.canvas.textout(x-12,y+20,floattostr((max-(max-min)/2))+' '+s); 83: // Ersten Kreisausschnitt zeichnen 84: ort.canvas.moveto(round ((cw/2)-(cos(degtorad(30))*(cw/2))),round (ch-1-(sin(degtorad(30))*(cw/2)))); 85: for k:=31 to 150 do 86: Begin 87: x:=round ((cw/2)-(cos(degtorad(k))*(cw/2))); 88: y:=round (ch-1-(sin(degtorad(k))*(cw/2))); 89: ort.canvas.lineto(x,y); 90: end; 91: // Skala erstellen 92: for k:=3 to 15 do 93: Begin 94: x:=round ((cw/2)-(cos(degtorad(k*10))*(cw/2))); 95: y:=round (ch-1-(sin(degtorad(k*10))*(cw/2))); 96: ort.canvas.moveto(x,y); 97: x:=round ((cw/2)-(cos(degtorad(k*10))*((cw/2)-15))); 98: y:=round (ch-1-(sin(degtorad(k*10))*((cw/2)-15))); 99: ort.canvas.lineto(x,y); 100: end; 101: // Zweiten Kreisausschnitt zeichnen diesmal andere Farbe 102: ort.canvas.pen.color:=farbe; 103: ort.canvas.pen.width:=2; 104: ort.canvas.moveto(round ((cw/2)-(cos(degtorad(30))*((cw/2)-15))),round (ch-1-(sin(degtorad(30))*((cw/2)-15)))); 105: for k:=31 to 150 do 106: Begin 107: x:=round ((cw/2)-(cos(degtorad(k))*((cw/2)-15))); 108: y:=round (ch-1-(sin(degtorad(k))*((cw/2)-15))); 109: ort.canvas.lineto(x,y); 110: end; 111: // Zeichnen des Zeigers 112: j:=round((((i-min)*120)/(max-min))+30); 113: ort.canvas.moveto (round(cw/2),ch-1); 114: 115: ort.canvas.pen.color:=clgray; 116: ort.canvas.pen.width:=2; 117: x:=round ((cw/2)-(cos(degtorad(j))*((cw/2)-15))); 118: y:=round (ch-1-(sin(degtorad(j))*((cw/2)-15))); 119: ort.canvas.lineto (x,y); 120: // Die Spitze in anderer Farbe 121: ort.canvas.pen.color:=farbe; 122: ort.canvas.pen.width:=2; 123: x:=round ((cw/2)-(cos(degtorad(j))*(cw/2))); 124: y:=round (ch-1-(sin(degtorad(j))*(cw/2))); 125: ort.canvas.lineto (x,y); 126: end; 127: 128: end.
42 zeitdia.pas :56:38 Seite 1 von 1 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: zeitdia letzte Änderung: * 4: * Oberklasse: TAnzeige * 5: * Klasse: TZeitdia * 6: * Unterklasse: TLiniendia, TBalkendia * 7: * * 8: * Funktion: erzeugen (Constructor) * 9: * * 10: * Eingaben: min_wert, max_wert, wert_einheit, color, * 11: * place * 12: * Ausgaben: - * 13: * * 14: * Aufruf von: - * 15: * Ruft auf: - * 16: ****************************************************************} 17: 18: unit zeitdia; 19: 20: interface 21: 22: uses 23: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 24: Dialogs, ExtCtrls, ComCtrls, StdCtrls, anzeige; 25: 26: type 27: TZeitdia = Class (Tanzeige) 28: ort: TPaintbox; 29: min: real; 30: max: real; 31: einheit: string; 32: 33: constructor erzeugen(min_wert, max_wert: real;wert_einheit: string; color:tcolor; place:tpaintbox); 34: end; 35: 36: implementation 37: 38: constructor TZeitdia.erzeugen(min_wert, max_wert: real;wert_einheit: string; color:tcolor; place:tpaintbox); 39: // Constructor zum erzeugen der Zeitdiagramme (Unterklasse Liniendiagramm und Balkendiagramm) 40: Begin 41: min:=min_wert; 42: max:=max_wert; 43: einheit:=wert_einheit; 44: farbe:=color; 45: ort:=place; 46: end; 47: 48: end.
43 liniendia.pas :23:30 Seite 1 von 2 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: liniendia letzte Änderung: * 4: * Oberklasse: TZeitdia * 5: * Klasse: TLiniendia * 6: * Unterklasse: - * 7: * * 8: * Funktion: anzeigen (zeigt den zeitlichen Verlauf von * 9: * Messwerten, die in einem Array * 10: * gespeichert sind. * 11: * * 12: * Eingaben: data, time, time_unit * 13: * Ausgaben: Zeitliniendiagramm * 14: * * 15: * Aufruf von: dia_ohm, dia_puls, dia_temp * 16: * Ruft auf: - * 17: ****************************************************************} 18: 19: unit liniendia; 20: 21: interface 22: 23: uses 24: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 25: Dialogs, ExtCtrls, ComCtrls, StdCtrls, zeitdia, anzeige, main, dia_temp; 26: 27: type 28: TLiniendia = Class (TZeitdia) 29: procedure anzeigen (data: array of real;time:integer;timeunit:string); 30: end; 31: 32: implementation 33: 34: procedure TLiniendia.anzeigen(data: array of real;time:integer;timeunit:string);//liniendiagramm anzeigen 35: var 36: cw, ch, y, x, i: integer; 37: Begin 38: // Grundeinstellungen 39: ort.refresh; 40: ort.canvas.pen.width:=2; 41: ort.canvas.pen.color:=clblack; 42: cw:=ort.clientwidth; 43: ch:=ort.clientheight; 44: // X-Achse zeichnen 45: ort.canvas.moveto(30,ch-20); //Nullpunkt festlegen 46: ort.canvas.lineto(cw-20,ch-20); //X-Achse zeichen 47: ort.canvas.lineto(cw-28,ch-28); //Spitze erstellen 48: ort.canvas.moveto(cw-28,ch-12); //" 49: ort.canvas.lineto(cw-20,ch-20); //" 50: // Y-Achse zeichen 51: ort.canvas.moveto(30,ch-20); //Nullpunkt 52: ort.canvas.lineto(30,10); //Y-Achse zeichnen 53: ort.canvas.lineto(38,18); //Spitze zeichnen 54: ort.canvas.moveto(30,10); //" 55: ort.canvas.lineto(22,18); //" 56: // Achsenbeschriftung hinzufügen 57: ort.canvas.textout(cw-18,ch-26,'t'); //Achsenbeschriftung 58: ort.canvas.textout(cw-19,ch-12,timeunit); //" 59: ort.canvas.textout(0,0,einheit); 60: // Achsengitter zeichnen 61: ort.canvas.pen.color:=clsilver; 62: for i:=1 to trunc(time/2) do //Achsengitter (X-Achse) 63: Begin 64: ort.canvas.textout(round(((i*2)*(cw-50)/(time+1))+30-6),ch-12,inttostr(i*2)); 65: ort.canvas.moveto(round(((i*2)*(cw-50)/(time+1))+30),ch-21); 66: ort.canvas.lineto(round(((i*2)*(cw-50)/(time+1))+30),10); 67: end; 68: ort.canvas.moveto(31,20); //Achsengitter (Y-Achse) 69: ort.canvas.lineto(cw-20,20); 70: ort.canvas.textout(0,14,floattostr(max)); 71: ort.canvas.moveto(31,round(((ch-40)/2)+20)); 72: ort.canvas.lineto(cw-20,round(((ch-40)/2)+20)); 73: ort.canvas.textout(0,round(((ch-40)/2)+14),floattostr(((max-min)/2)+min)); 74: ort.canvas.textout(0,ch-26,floattostr(min)); 75: // Messwert verlauf zeichen 76: ort.canvas.pen.color:=farbe;
44 liniendia.pas :23:30 Seite 2 von 2 77: ort.canvas.moveto(31,round(ch-20-(((data[1]-min)*(ch-40))/(max-min)))); 78: for i:=1 to time do 79: Begin 80: y:=round(ch-20-(((data[i+1]-min)*(ch-40))/(max-min))); 81: x:=round(((i)*(cw-50)/(time+1))+30); 82: ort.canvas.lineto(x,y); 83: end; 84: end; 85: 86: end.
45 balkendia.pas :03:00 Seite 1 von 2 1: {**************************************************************** 2: * Name: Biomonitor Autor: Dominik Lönarz * 3: * Unit: balkendia letzte Änderung: * 4: * Oberklasse: TZeitdia * 5: * Klasse: TBalkendia * 6: * Unterklasse: - * 7: * * 8: * Funktion: anzeigen (zeigt den zeitlichen Verlauf von * 9: * Messwerten, die in einem Array * 10: * gespeichert sind. * 11: * * 12: * Eingaben: data, time, time_unit * 13: * Ausgaben: Zeitbalkendiagramm * 14: * * 15: * Aufruf von: dia_ohm, dia_puls, dia_temp * 16: * Ruft auf: - * 17: ****************************************************************} 18: 19: unit balkendia; 20: 21: interface 22: 23: uses 24: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 25: Dialogs, ExtCtrls, ComCtrls, StdCtrls, zeitdia, anzeige; 26: 27: type 28: TBalkendia = Class (TZeitdia) 29: procedure anzeigen (data: array of real;time:integer;timeunit:string); 30: end; 31: 32: implementation 33: 34: procedure TBalkendia.anzeigen(data: array of real;time:integer;timeunit:string); 35: // Balkendiagramm in abhängigkeit der Zeit 36: var 37: cw, ch, y, x1, x2, i: integer; 38: Begin 39: // Grundlagen schaffen 40: ort.refresh; 41: ort.canvas.pen.width:=2; 42: ort.canvas.pen.color:=clblack; 43: cw:=ort.clientwidth; 44: ch:=ort.clientheight; 45: // X-Achse zeichnen 46: ort.canvas.moveto(30,ch-20); //Nullpunkt festlegen 47: ort.canvas.lineto(cw-20,ch-20); //X-Achse zeichen 48: ort.canvas.lineto(cw-28,ch-28); //Spitze erstellen 49: ort.canvas.moveto(cw-28,ch-12); //" 50: ort.canvas.lineto(cw-20,ch-20); //" 51: // Y-Achse zeichnen 52: ort.canvas.moveto(30,ch-20); //Nullpunkt 53: ort.canvas.lineto(30,10); //Y-Achse zeichnen 54: ort.canvas.lineto(38,18); //Spitze zeichnen 55: ort.canvas.moveto(30,10); //" 56: ort.canvas.lineto(22,18); //" 57: // Achsenbeschriftung 58: ort.canvas.textout(cw-18,ch-26,'t'); //Achsenbeschriftung 59: ort.canvas.textout(cw-19,ch-12,timeunit); //" 60: ort.canvas.textout(0,0,einheit); 61: // Achsengitter erstellen 62: ort.canvas.pen.color:=clsilver; 63: for i:=1 to trunc(time/2) do //Achsengitter (X-Achse) 64: Begin 65: ort.canvas.textout(round(((i*2)*(cw-50)/(time+1))+30-6),ch-12,inttostr(i*2)); 66: ort.canvas.moveto(round(((i*2)*(cw-50)/(time+1))+30),ch-21); 67: ort.canvas.lineto(round(((i*2)*(cw-50)/(time+1))+30),10); 68: end; 69: ort.canvas.moveto(31,20); //Achsengitter (Y-Achse) 70: ort.canvas.lineto(cw-20,20); 71: ort.canvas.textout(0,14,floattostr(max)); 72: ort.canvas.moveto(31,round(((ch-40)/2)+20)); 73: ort.canvas.lineto(cw-20,round(((ch-40)/2)+20)); 74: ort.canvas.textout(0,round(((ch-40)/2)+14),floattostr(((max-min)/2)+min)); 75: ort.canvas.textout(0,ch-26,floattostr(min)); 76: // Balken zeichnen 77: ort.canvas.pen.width:=1;
46 balkendia.pas :03:00 Seite 2 von 2 78: ort.canvas.pen.color:=clgradientinactivecaption; 79: ort.canvas.brush.color:=farbe; 80: for i:=1 to time do 81: Begin 82: y:=round(ch-20-(((data[i+1]-min)*(ch-40))/(max-min))); 83: x1:=round(((i)*(cw-50)/(time+1))+30-((cw-50)/(time*2))); 84: x2:=round(((i)*(cw-50)/(time+1))+30+((cw-50)/(time*2))); 85: ort.canvas.rectangle(x1,ch-21,x2,y); 86: end; 87: end; 88: 89: end.
Delphi Grundkurs Seite 31
Delphi Grundkurs Seite 31 Beispiel 9 Notenanalyse Problem: Programm P09 Schulnoten in Editfeld eingeben: bei wird Text in Zahl x umgewandelt; Bei Eingabefehler (x < 1 oder x > 5 oder x nicht numerisch)
MehrDelphi DLL Tutorial Wie exportiere ich Komponenten aus einer DLL?
Delphi DLL Tutorial Wie exportiere ich Komponenten aus einer DLL? Von Padmalcom (20.03.2009) www.jofre.de Nach dem Tutorial 1 von Leonardo M. Ramé 1 Ja, es geht wirklich! Im Internet sind tausende Forenbeinträge
MehrProgrammierung in Delphi
Berufsbildende Schule Wirtschaft Trier Programmierung in Delphi (Einführung in die IDE) Unterrichtsmaterialien von Christoph Oberweis Stand: 13.11.2011 1 Einführung in die Delphi-Programmierung Delphi-Entwicklungssystem
MehrInstitut für Informatik Christian-Albrechts-Universität zu Kiel. Borland Delphi. Einführung in die Programmiersprache
Institut für Informatik Christian-Albrechts-Universität zu Kiel Borland Delphi Einführung in die Programmiersprache Geschichte Objective Pascal objektorienterte Programmiersprache Rapid Development schweizer
MehrDelphi eine Einführung
Delphi eine Einführung 1. Die Entwicklungsumgebung Delphi ist ein sogenanntes RAD Werkzeug. RAD = Rapid Application Development = schnelle Anwendungsentwicklung Merkmale: - es gibt vorgefertigte Komponenten
MehrProgrammierung mit Delphi
Programmierung mit Delphi Programmierung Kommunikation Mensch Maschine Komponente Attribute Formular Größe, Farbe, Schaltflächen,... Label Beschriftung (Caption),... Edit... Button... Quellcode Anweisungen
Mehr6. Grafikprogrammierung
Delphi Grundkurs Seite 49 6. Grafikprogrammierung Die Grafikoperationen beziehen sich immer auf die Zeichenoberfläche (Leinwand, Canvas) eines bestimmten Objekts. (0,0) des Formulars Image - Komponentenpalette
MehrEin Softwareprojekt mit Delphi
IFB-Veranstaltung : OOP mit Delphi II U.Mayr : Turing-Simulator Ein Softwareprojekt mit Delphi Turing-Simulator, ein Softwareprojekt mit Delphi S. 2 Inhaltsverzeichnis 1. Ein Softwareprojekt : Die Simulation
MehrKomponente PortIO für Delphi 5.0
Komponente PortIO für Delphi 5.0 PortIO Handbuch Seite 1 von 12 INHALTSVERZEICHNIS Komponente PortIO... 4 Private Funktion... 5 Protected Funktion... 6 Public Funktion... 7 Published Funktion... 8 Kompnenten
MehrMusterlösungen zu den RSA-Arbeitsblättern
Musterlösungen zu den RSA-Arbeitsblättern Arbeitsblatt 01: Aufgabe 1: a) 1 Uhr. b) 13 Uhr. Aufgabe 2: a) 21. b) 19. c) 48. d) 19. Aufgabe 3: a) 9. b) 7. Aufgabe 4: a) 13. b) 7. Arbeitsblatt 02: Aufgabe
MehrKomponente PortUSB für Delphi 5.0
Komponente PortUSB für Delphi 5.0 Funktion nur mit der P8055-1 Karte von der Firma Velleman. PortUSB Handbuch Seite 1 von 1 INHALTSVERZEICHNIS Komponente PortUSB für Delphi 5.0... 1 Komponente PortUSB...
MehrEINFACH. Programmier-Grundkurs. Rosa Mistelbauer
EINFACH Programmier-Grundkurs Rosa Mistelbauer Inhaltsverzeichnis Delphi Grundkurs Grundlagen 01 Entwicklungsumgebung von DELPHI 02 Beispiel 01 Begrüßung 04 Beispiel 02 Halbieren einer ganzen Zahl 07 Beispiel
MehrVon Turbo Pascal zu Object Pascal
unter Delphi Landesfachberater für Informatik in Thüringen otto.thiele@gmx.net 4. Fachtagung Informatikunterricht der Zukunft Arbeitskreis F1 März 2006 Gliederung 1. 2. 3. 4. 5. 6. 7. Komponenten 1 Komponentenorientiertes
MehrLWB VIII. Programmieren mit Delphi Zur Laufzeit verwaltete Objekte. Zur Laufzeit verwaltete Objekte. Am Beispiel des bekannten Memory-Spieles
Am Beispiel des bekannten Memory-Spieles Warum Spiele? fragen Sie. Ich antworte: um die Kunst der Erfindung zu vervollkommnen. (Leibniz) Mit seinen einfachen und unzweideutigen Regeln ist ein Spiel immer
Mehr2 Programmentwicklung mit Delphi
2.1 Arbeiten mit Delphi 26 2 Programmentwicklung mit Delphi Die Programmentwicklung mit Delphi wird in drei Schritten eingeführt: Zuerst wird die prinzipielle Arbeitsweise geschildert, danach wird das
MehrEinführung zu der DLL für die USB Experiment Interface Board K8055
K8055D.DLL 1 Einführung zu der DLL für die USB Experiment Interface Board K8055 Die K8055 Interface Board hat 5 digitale Eingangskanäle und 8 digitale Ausgangskanäle. Zusätzlich gibt es 2 analoge Eingänge,
MehrDie Klasse TCanvas (Canvas = Leinwand) stellt eine abstrakte Zeichenfläche dar.
Komponeneten TCanvas: Die Klasse TCanvas (Canvas = Leinwand) stellt eine abstrakte Zeichenfläche dar. Eigenschaften: Pen Mit Pen können Sie festlegen, welcher Stift zum Zeichnen von Linien und Umrissen
MehrInformatik GK 12 Klassen Klassen programmieren in Delphi am Beispiel der konkreten Klasse Auto
programmieren in Delphi am Beispiel der konkreten Klasse Auto Auto -Baujahr -Typ -Besitzer -Farbe -Kilometerstand -Fahren() -Bremsen() Objekt1: Auto Typ: Golf Baujahr: 1998 Besitzer: Peter Farbe: rot Kilometerstand:
MehrInformatik Kurs 12 André Hoffmann. Delphi. Einführung in die Windows- Programmierung
Informatik Kurs 12 André Hoffmann Delphi Einführung in die Windows- Programmierung Grundlagen Entwicklung von Windows-Programmen Relativ unkompliziert durch typische, vorgefertigte Elemente Programmiertechnische
MehrSimulation von digitalen Schaltungen
Eckart Modrow Simulation von digitalen Schaltungen S. 1 Simulation von digitalen Schaltungen Inhalt: 1. Bezug zum Unterricht 2. Funktionsumfang des Simulators HASI 3. Klassenhierarchien 4. Die Erzeugung
MehrProgrammierkurs: Delphi: Einstieg
Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache
MehrKlausur in 12.1 Themen: Zahlsysteme, Grundlagen von Delphi (Bearbeitungszeit: 90 Minuten)
Name: «Vorname» «Name» Klausur in 12.1 Themen: Zahlsysteme, Grundlagen von Delphi (Bearbeitungszeit: 90 Minuten) Informatik 12 2 VP je 2 VP 6 VP 0 Notieren Sie alle Antworten in einer Word-Datei Klausur1_«Name».doc
MehrDas ausführbare Programm Bsp1.cfg, Bsp1.dof, Bsp1.dpr, Bsp1.res Projektdateien für Delphi 7 Prak.pas
Fakultät Informatik, Professur Computergraphik und Visualisierung 1 1 EINFÜHRUNG Zu diesem Praktikum wird ein vorbereitetes Delphi-Projekt zur Verfügung gestellt. Es ist so aufgebaut, dass man wichtige
MehrGraphische Benutzungsoberflächen
Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen
MehrEinführung in rekursives Programmieren
Einführung in rekursives Programmieren mit numerischen und graphischen Beispielen (fraktale Kurven) von Werner Rockenbach, Simmern Nikolaus Wirth definiert die Rekursion wie folgt: Ein Objekt heißt rekursiv,
MehrDelphi-Grundlagen Hn 26.4.2010
Delphi Grundlagen Ein Delphiprogramm besteht aus 3 Teilen: - dem Formular (*.dfm) - dem Quelltext oder der Unit (*.pas) und - der Projektdatei (*.dpr), die Quelltext und Formular zusammenfügt. Änderungen
MehrFacharbeit. Thema: Ein neuronales Netz lernt Zahlen Mustererkennung am PC
Söderblom-Gymnasium Sebastian Kenter Facharbeit Thema: Ein neuronales Netz lernt Zahlen Mustererkennung am PC Fach: Informatik Kurs: GK-Informatik 2 Fachlehrer: Herr Helmich Beginn: 02.02.2004 Abgabe:
MehrEinführung in Automation Studio
Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in
MehrEinführung in Delphi. Komponenten regeln die Dateneingabe und Datenausgabe.
Einführung in Delphi Komponenten regeln die Dateneingabe und Datenausgabe. Datenverarbeitung Computer sind Geräte zur Datenverarbeitung. Grundprinzip: EVA Eingabe Verarbeitung Ausgabe Beispiel: Minirechner
MehrProcessing Info zu Variablen und Bedingungen
Processing Info zu Variablen und Bedingungen Dieses Dokument enthält - Variablen (Variablen, Datentypen, Deklaration, Geltungsbereich, Benennung) - Bedingungen (if, mousepressed, else) Variablen Eine Variable
MehrAspekte objektorientierter Programmierung. mit Delphi
IFB-Veranstaltungen : 19.657 / 19.666A und weitere Von Pascal nach Delphi Aspekte objektorientierter Programmierung mit Delphi Ulrich Mayr, Trier Inhaltsverzeichnis OOP-Konzepte von Delphi verstehen und
MehrSteuern des GSR-Interface mit QBasic
Steuern des GSR-Interface mit QBasic Erstellt von Jochen Sendler, Geschwister-Scholl-Realschule Mannheim Inhaltsverzeichnis 1. Die Programmiersprache QBasic 3 2. Starten von QBasic 3 3. Ansteuern einzelner
MehrEinstieg in die Objektorientierte Programmierung (OOP) mit Delphi
bertram.hafner@t-online.de OOP mit Delphi Seite 1 Einstieg in die Objektorientierte Programmierung (OOP) mit Delphi Warum steigst du in Delphi ein? Wahrscheinlich, weil dich einer der Vorzüge von Delphi
MehrSchritt 1 - Ein Spielfeld
Schritt 1 - Ein Spielfeld Wir beginnen mit zwei einfachen Java-Klassen, dem eigentlichen Spielfeld und dem Applet zum Anzeigen des Spielfeldes (und später der Buttons und der anderen Bedienelemente). Hier
MehrProjekt Informatik: Programmieren einer selbstgewählten Anwendungssoftware. Jenny Förster Susann Lorenz
Projekt Informatik: Programmieren einer selbstgewählten Anwendungssoftware Jenny Förster Susann Lorenz Inhaltsverzeichnis 1. Vorstellung des Projektzieles 2. Einleitung Das Menü XXO Roulette Impressum
MehrBuch-Add-Ons. Jürgen Bayer. Object Pascal-Tipps und Tricks. 1 Konvertieren und auf numerische Werte überprüfen 2
Buch-Add-Ons Jürgen Bayer Inhaltsverzeichnis Object Pascal-Tipps und Tricks 1 Konvertieren und auf numerische Werte überprüfen 2 1.1 Strings in Integerwerte konvertieren 2 1.2 Strings in Extended-Werte
Mehr2.3 Wir erstellen eine neue Klasse THaus
bertram.hafner@t-online.de Informatik 10 Seite 11 2.3 Wir erstellen eine neue Klasse THaus Menschen kommen heim, öffnen die Haustür, schalten das Licht an, Die Grundidee der objektorientierten Programmierung
MehrEltako-FVS. Lizenzaktivierung ohne Internetverbindung
Eltako-FVS Lizenzaktivierung ohne Internetverbindung Aktivierung der Funk-Visualisierungs- und Steuerungs-Software FVS über die Lizenzaktivierungsdatei, sofern die direkte Eingabe des Lizenzschlüssels
MehrVisual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!
Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist
MehrMini-FAQ v1.3 CMS-50E. Fingerpulsoximeter
Mini-FAQ v1.3 CMS-50E Fingerpulsoximeter 1.) Wie macht man einen Echtzeitdatentransfer vom PULOX CMS-50E zum Computer und wie speichert man diese Messdaten auf Festplatte? 2.) Wie nimmt man mit dem PULOX
Mehr1.4.12 Sin-Funktion vgl. Cos-Funktion
.4. Sgn-Funktion Informatik. Semester 36 36.4.2 Sin-Funktion vgl. Cos-Funktion Informatik. Semester 37 37 .4.3 Sqr-Funktion Informatik. Semester 38 38.4.4 Tan-Funktion Informatik. Semester 39 39 .5 Konstanten
MehrKapitel 12: Übersetzung objektorienter Konzepte
Kapitel 12: Übersetzung objektorienter Konzepte Themen Klassendarstellung und Methodenaufruf Typüberprüfung Klassenhierarchieanalyse Escape Analyse 12.1 Klassendarstellung bei Einfachvererbung class Punkt
MehrKlassendefinitionen verstehen
Klassendefinitionen verstehen Java-Programme bestehen aus Klassendefinitionen und sonst nichts! 1 1.0 Konzepte Felder Konstruktoren Methoden Parameter Zuweisungen ( = ) Anweisungen bedingte Anweisungen
MehrKISSsys Anleitung: Lagerkräfte aus KISSsys Modell exportieren
KISSsoft AG Frauwis 1 CH - 8634 Hombrechtikon Telefon: +41 55 264 20 30 Fax: +41 55 264 20 33 Email: info@kisssoft.ch KISSsys Anleitung: Berechnungssoftware für den Maschinenbau Ausgabe der Lagerkräfte
MehrÜbersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung
Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des
MehrArbeitsblatt 5 EAD II NetBeans
Arbeitsblatt 5 EAD II NetBeans Graphische Oberfläche für Uhrenanzeige mit NetBeans Für die Einführung in die Verwendung von NetBeans erstellen wir die graphische Oberfläche für die Uhr nun mit NetBeans.
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 10. Klassen
Grundlagen der Programmierung Prof. H. Mössenböck 10. Klassen Motivation Wie würde man ein Datum speichern (z.b. 13. November 2004)? 3 Variablen int da; String month; int ear; Unbequem, wenn man mehrere
Mehr5.2 Variablenkonzept und elementare Datentypen
bertram.hafner@t-online.de Informatik 11 Seite 10 5.2 Variablenkonzept und elementare Datentypen Der aktuelle Zustand des Karol-Systems ist festgelegt durch: - Länge, Breite, Höhe der Welt - Position,
MehrAnleitung zum Dialog Simulator
Inhaltsverzeichnis A Seeheim-Modell 14 Inhaltsverzeichnis Anleitung zum Dialog Simulator Version 0.9.0.1 Tobias Nowack 1. Oktober 2004 Inhaltsverzeichnis 1 1 Einleitung 4 2 Change Log 4 2.1 Version 0.9.0.1..................................
MehrÜbungsaufgaben zu Delphi von M. Hühr
Übungsaufgaben zu Delphi von M. Hühr einige Aufgaben zur Übung von Algorithmen leicht 1.1 Schreiben Sie ein Programm, mit dem man die Summe der Zahlen von 1 bis zu dem eingegebenen Wert erhält. 1.2 Schreiben
Mehr4-Kanal-Analoglogger für die Regelungstechnik
LTAM-FELJC jean-claude.feltes@education.lu 1 4-Kanal-Analoglogger für die Regelungstechnik Firmware Kommunikation mit dem PC Seriell mit 38400 Baud Kommandos:? = Liste aller Kommandos t = set time interval
MehrWie baue ich mir einen Chat
Wie baue ich mir einen Chat Wie der Titel schon sagt, geht es in diesem Tutorial darum, wie man einen Chat mit den Sockets realisiert. Ihr solltet dazu mit der IDE und der Sprache von Delphi zumindest
MehrContainer-Klassen in Delphi
Verwalten von Objekten mit Hilfe von Container-Klassen am Beispiel eines Memory Spieles Container-Klassen in Delphi Michael Puff mail@michael-puff.de 2010-03-26 Inhaltsverzeichnis Inhaltsverzeichnis 1
MehrEine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.
Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
MehrDokumentation des Projektes Tic Tac Toe
Praktikum aus Programmierung Dr. Michael Hahsler Dokumentation des Projektes Tic Tac Toe 0050230 1 Java Projekt: Tic Tac Toe 1. Inhaltsverzeichnis 1. Inhaltsverzeichnis... 2 2. Problemdefinition... 2 3.
MehrLösungen zu den Übungsaufgaben zu Feldern
Lösungen zu den Übungsaufgaben zu Feldern Aufgabe 1: Punktberechnung procedure TForm1.Button1Click(Ser: TObject); punkt = array[1..3] of double; d, p, q: punkt; abstand: double; // Eingabe p[1]:= StrToFloat(Edit1.Text);
MehrFakultät für Elektrotechnik und Informationstechnik Institut für Grundgebiete der Elektrotechnik (EIT 2) Diplomarbeit
Fakultät für Elektrotechnik und Informationstechnik Institut für Grundgebiete der Elektrotechnik (EIT 2) Diplomarbeit Entwurf und Aufbau einer mobilen Tomografieapparatur Verfasser: Prüfer: Betreuer: Nina
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
MehrÜbungsaufgaben zum Erlernen der Handhabung von Delphi
Einführung in Delphi + Übungsaufgaben zum Erlernen der Handhabung von Delphi von Matthias Hühr unter Anleitung von Frau Prof. Ch.Wahmkow DV II, Arbeitsblätter Delphi Seite 1 Gliederung 1. Einführung 2.
MehrVererbung & Schnittstellen in C#
Vererbung & Schnittstellen in C# Inhaltsübersicht - Vorüberlegung - Vererbung - Schnittstellenklassen - Zusammenfassung 1 Vorüberlegung Wozu benötigt man Vererbung überhaubt? 1.Um Zeit zu sparen! Verwendung
Mehr8. Fachseminar Informatik Martin Jakobs Einstieg in die Objektorientierte Programmierung (Standard 1 / 3)
Ergebnisse der Seminarsitzung vom 19. November 2007 Einstieg in die Objektorientierte Programmierung (Standard 1 und 3) Die Schule - ein Textadventure a) Didaktische Überlegungen Textadventures sind Computerspiele
MehrWillkommen... Agenda für heute, 25. Februar, 2010. ... Studentinnen und Studenten der Studiengänge
Willkommen...... Studentinnen und Studenten der Studiengänge Umweltnaturwissenschaften Erdwissenschaften Agrarwissenschaften zur Vorlesung Agenda für heute, 25. Februar, 2010 g P http://www.pup.ethz.ch/
MehrVon Pascal zu Delphi. Aufbau eines Delphi-Projektes. Grundlagen von ObjectPascal. Prozeduren und Funktionen. Übungen. Ende
Von Pascal zu Delphi Aufbau eines Delphi-Projektes Aufbau einer Unit Aufbau einer Prozedur Grundlagen von ObjectPascal Schleifen Verzweigungen Array Prozeduren und Funktionen Übungen Ende Entwicklung der
MehrJava Kurzreferenz Für Fortgeschrittene
Java Kurzreferenz Für Fortgeschrittene 1. Initialisierung von Applets: Die Methode init Wenn ein Applet gestartet wird, werden immer zwei Methoden aufgerufen. Diese heissen init und start. Um gewisse Berechnungen
MehrModul 122 VBA Scribt.docx
Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval
MehrProgrammieren I + II Regeln der Code-Formatierung
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme WS 2016/2017, SS 2017 Programmieren I + II Regeln der Code-Formatierung In diesem Dokument finden
MehrPHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden.
PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden. Allgemein Ein Einzug sollte aus 4 Leerzeichen bestehen.
MehrGymnasium Herkenrath Leistungskonzept -Fachbereich Deutsch-
Gymnasium Herkenrath Leistungskonzept -Fachbereich Deutsch- Seite von 3 Allgemeine Informationen: Das Fach Informatik wird am Gymnasium Herkenrath in der Sekundarstufe I in den Jahrgangsstufen 8 und 9
MehrFunktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung:
Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Der Sourcecode wird an den entsprechenden Stellen im Programm wiederholt Programm wird lang
MehrUniversität Paderborn Prof. Dr. Stefan Böttcher. Kapitel 3: Java Applets
Kapitel 3: Java Applets 1 Was sind Applets? kleine in Fenstern ausführbare Programme typisch: Aufruf im Browserfenster als Teil einer HTML-Seite Anfang des umgebenden HTML-Textes
Mehr13 OOP MIT DELPHI. Records und Klassen Ein Vergleich
13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,
MehrMedieneinsatz im Unterricht und Unterrichtsformen auf die richtige Dosierung kommt es an
1 Einleitung Medieneinsatz im Unterricht und Unterrichtsformen auf die richtige Dosierung kommt es an Lehmann, Eberhard Angesichts der Vielfalt der heute zur Verfügung stehenden Medien, aber auch der möglichen
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
MehrGrundlagen der Informatik 2
Grundlagen der Informatik 2 Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Gliederung 1. Einführung
MehrDrei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI
Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer
MehrArbeitsblatt Übungen in Delphi Informatik Klasse: Datum: 1. Juni 2007
1. Es gibt verschiedene Objekte: 1.1. TLabel Das erste Label, das man auf dem Formular platziert erhält automatisch den Namen label1 Caption (typ: string) Ändern der Anzeige eines Labels : label1.caption:=
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin
MehrEinführung in die Objektorientierte Programmierung
Einführung in die Objektorientierte Programmierung MVC mit Zustandsbasierter Modellierung 23.04.2009 Helmut Paulus Max-Planck-Gymnasium Trier Einstieg Diskussion: Nachteile der bisher im Unterricht entwickelten
MehrMakro Programmierung User Interface (Entwicklungs- Umgebung) Grafische Werkzeugbox. GUI Form erstellen (UserForm)
Makro Programmierung User Interface (Entwicklungs- Umgebung) Grafische Werkzeugbox GUI Form erstellen (UserForm) GUI definieren Aktivitäten programmieren Programmcode für das Zufügen von Zell Werten Struktogramm
MehrEinführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
Mehr4.Grundsätzliche Programmentwicklungsmethoden
4.Grundsätzliche Programmentwicklungsmethoden 1.1 Grundlage strukturierter und objektorientierter Programmierung Begriff Software Engineering - umfaßt den gezielten Einsatz von Beschreibungsmitteln, Methoden
MehrDelphi-Source.de. Delphi-Source.de - Grundlagen. Object Pascal-Grundlagen. Allgemeines zur Syntax. Variablen und Konstanten. Was ist Object Pascal?
Delphi-Source.de Delphi-Source.de - Grundlagen Object Pascal-Grundlagen Allgemeines zur Syntax Was ist Object Pascal? Bei Object Pascal handelt es sich um eine höhere, objektorientierte Programmiersprache.
MehrEinführung in Javadoc
Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:
MehrÜbung zur Vorlesung Multimedia im Netz
Übung zur Vorlesung Multimedia im Netz Doris Hausen Ludwig-Maximilians-Universität München Wintersemester 2009/2010 Ludwig-Maximilians-Universität München Multimedia im Netz Übung 1-1 Organisatorisches
MehrNun öffnet sich das Fenster "Geplante Tasks". Hier zum Einrichten eines neuen Tasks auf "Geplanten Task hinzufügen" klicken. Es öffnet sich der Assist
PCs automatisch herunterfahren Frage: In meiner Schule soll der Lehrerzimmercomputer (oder ein anderer PC) um 17.00 Uhr automatisch herunterfahren. Wie kann ich das einrichten? Antwort: Um einen Computer
MehrÜber Arrays und verkettete Listen Listen in Delphi
Über Arrays und verkettete Listen Listen in Delphi Michael Puff mail@michael-puff.de 2010-03-26 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einführung 3 2 Arrays 4 3 Einfach verkettete Listen 7 4 Doppelt verkettete
Mehr=
bertram.hafner@t-online.de Informatik 11 Seite 16 5.4 Einfache Algorithmen, programmiert mit Delphi a) Umwandlung einer Zahl vom 10-System ins Dualsystem Zahl im 10-System Zahl im 2-System 19 10 = 10011
Mehr1.1 Was für Funktionen gibt es in der Unit Math?
mitp Seitenanzahl 13 Die Unit Math 1 Die Unit Math Die Unit Math stellt an die 100 Funktionen für mathematische Berechnungen zur Verfügung. Das schöne daran ist, das der Source verfügbar ist und zwar ist
MehrAnzeige des Java Error Stack in Oracle Forms
Anzeige des Java Error Stack in Oracle Forms (Version 2.0) Juni 2008 Autoren: Jürgen Menge / Thomas Robert Seite 1 von 7 Oracle Forms bietet seit der Version 6i die Möglichkeit, serverseitig Java-Klassen
MehrG. KAMLEITER INFORMATIK. Einführung in DELPHI SJ 2004/05 LGG * DARMSTADT. Kurs 11
G. KAMLEITER INFORMATIK Kurs 11 Einführung in DELPHI SJ 2004/05 LGG * DARMSTADT Einführung in die Programmiersprache Delphi - 1-2. Dezember 2004 / 20:12:30 Inhaltsverzeichnis I EINSTIEG IN DELPHI...4 I.1
MehrInformatik ist viel mehr als Delphi-Programmierung!
Gliederung 1. Objektorientierte Programmierung mit Object Pascal (5. Studienbrief, Kapitel 5) 9.4. + 16.4. 2. Software-Bausteine am Beispiel der Delphi-Komponenten (5. Studienbrief, Kapitel 5) 23.4. 3.
MehrPO-250. Fingerpulsoximeter. 1. Wie führe ich eine Echtzeitübertragung vom PULOX PO-250 zum PC durch und speichere meine Messdaten auf dem PC?
Mini-FAQ v1.5 PO-250 Fingerpulsoximeter 1. Wie führe ich eine Echtzeitübertragung vom PULOX PO-250 zum PC durch und speichere meine Messdaten auf dem PC? 2. Wie nehme ich mit dem PULOX PO-250 Daten auf
MehrGI Vektoren
Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung
MehrC allgemein. C wurde unter und für Unix entwickelt. Vorläufer sind BCPL und B.
C-Crash-Kurs Eine kurze, keinesfalls erschöpfende Einführung in die Sprache C für Studierende, die eine strukturierte imperative Programmiersprache beherrschen. Die Vorstellung erfolgt am Beispiel von
MehrSie müssen den Test bis 20:00 Uhr am Abgabetag dieses Übungszettels absolviert haben.
Informatik I Wintersemester 2013/14 Prof. Dr. Carsten Damm Georg-August-Universität Göttingen Dr. Henrik Brosenne Institut für Informatik Übung 6 Abgabe bis Dienstag, 10.12., 18:00 Uhr. Werfen Sie Ihre
MehrErste Programme mit Lazarus
Erste Programme mit Lazarus Einführung in die Entwicklungsumgebung (IDE) Grundelemente der Programmiersprache Objekt-Pascal Übungen Helmut Paulus Speyer, 19.04.13 Teil 1 Einführung in die Lazarus-Entwicklungsumgebung
Mehr