Einzelnen Beitrag anzeigen

Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#8
  Alt 14. Jan 2003, 23:07
Also, pack in alle Proceduren erst mal ein
ErgebnisChange(Sender: self); rein, damit die Anzeige immer neu geschrieben wird. (Im folgenden aus Faulheit nicht gemacht)

Delphi-Quellcode:
unit Unit1;

interface

uses
  math, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, XPMan;

type
  TForm1 = class(TForm)
    a: TEdit;
    b: TEdit;
    fi: TEdit;
    Ergebnis: TEdit;
    Berechnen: TButton;
    CheckBox1: TCheckBox;
    procedure aChange(Sender: TObject);
    procedure ErgebnisChange(Sender: TObject);
    procedure bChange(Sender: TObject);
    procedure fiChange(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure BerechnenClick(Sender: TObject);
  private
    { Private declarations } 
  public
    { Public declarations } 
  end;

var
  Form1: TForm1;
a,b,fi: string;
 

implementation

{$R *.dfm} 

procedure TForm1.aChange(Sender: TObject);
begin
   a := DeinEdit.Text;
end;

procedure TForm1.bChange(Sender: TObject);
begin
  b := floattostr(2 * 3.14159 {kein Komma, Punkt} / DeinEdit.Text)
end;

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
   wenn Checkbox markiert wird eingabe in b (b mal mit 3,14159 multipliziert)
// das pack in die ErgebnisChange
end;

procedure TForm1.fiChange(Sender: TObject);
begin
  fi := DeinLabel.Text;
end;

procedure TForm1.BerechnenClick(Sender: TObject);
begin
   Bei klick des Buttons wird ergebnis angezeigt
   //hab ich übersehen, dann kannst du das ErgebnisChange in den einzelnen Proceduren weglassen
end;

procedure TForm1.ErgebnisChange(Sender: TObject);
var
  btemp: string;
begin

if checkbox1.checked then
  btemp := b;
else
  btemp := floattostr(3,14159 * strtofloat(b)); //es gibt auch ein pi in der unit Math

DeinLabel.Caption := 'f(x) =' a + '*sin(btemp(x-' + fi + '))';
end;



end.
Hoffe, das hilft
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat