AGB  ·  Datenschutz  ·  Impressum  







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

Bruchrechnen

Ein Thema von Maverick · begonnen am 6. Okt 2002 · letzter Beitrag vom 7. Okt 2002
Antwort Antwort
Seite 1 von 2  1 2      
Maverick

Registriert seit: 6. Okt 2002
9 Beiträge
 
#1

Bruchrechnen

  Alt 6. Okt 2002, 16:16
also ich hab ein Problem:
Für die Schule will ich ein Programm machen das eine Art interaktiver Mathetest ist. Da in dem Test Brucgh aufgaben vor kommen stell ich diese mit bildern da und wollte das eigentlich so machen das bei jeder neuen aufgabe die alte unsichtbar wird und die neue erscheint nun hab ich aber das problem das aufgabe 3 nicht erscheint.

bei den aufgaben sind die lösungen schon vorgegeben damit ich mir es erspare die ganzen rechen formeln zu schreiben

hier mal der quelltext :
Code:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Menus, StdCtrls, ComCtrls, ExtCtrls, jpeg;

type
  TForm1 = class(TForm)
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Ansicht1: TMenuItem;
    N1: TMenuItem;
    Beenden1: TMenuItem;
    Button1: TButton;
    Image1: TImage;
    Image2: TImage;
    Image3: TImage;
    Image4: TImage;
    Meldungsfenster: TGroupBox;
    Label7: TLabel;
    Fragenkatalog: TGroupBox;
    Label1: TLabel;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    RadioButton4: TRadioButton;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    info1: TMenuItem;
    Versionsnummer1: TMenuItem;
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    aufgabe_1_dic: TRichEdit;
    aufgabe_2_dic: TRichEdit;
    Copyright: TLabel;
    aufgabe_1_im: TImage;
    loesung_4_im: TImage;
    loesung_1_im: TImage;
    loesung_3_im: TImage;
    loesung_2_im: TImage;
    RichEdit1: TRichEdit;
    aufgabe_2_im: TImage;
    loesung_2_c_im: TImage;
    loesung_2_a_im: TImage;
    loesung_2_d_im: TImage;
    loesung_2_b_im: TImage;
    procedure Beenden1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Versionsnummer1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  zaehler_richtig, zaehler_falsch, Aufgabe_1_falsch, Aufgabe_1_richtig:integer;

implementation

{$R *.DFM}

procedure TForm1.Beenden1Click(Sender: TObject);
begin
close;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin

if radiobutton1.checked=false then label7.caption:='Bitte zuerst eine Antwort auswählen!';
if radiobutton2.checked=false then label7.caption:='Bitte zuerst eine Antwort auswählen!';
if radiobutton3.checked=false then label7.caption:='Bitte zuerst eine Antwort auswählen!';
if radiobutton4.checked=false then label7.caption:='Bitte zuerst eine Antwort auswählen!';

/////////// F R A G E - 2 //////////////////////////////////////////////////////
// Keine Angaben - Meldung löschen //
if radiobutton1.checked=true then label7.caption:=' ';
if radiobutton2.checked=true then label7.caption:=' ';
if radiobutton3.checked=true then label7.caption:=' ';
if radiobutton4.checked=true then label7.caption:=' ';
// Ende des Vorganges //
//----------------------------------------------------------------------------//
// Fragenummer vergeben //
if radiobutton1.checked=true then label1.caption:='Frage - 1b';
if radiobutton2.checked=true then label1.caption:='Frage - 1b';
if radiobutton3.checked=true then label1.caption:='Frage - 1b';
if radiobutton4.checked=true then label1.caption:='Frage - 1b';

if radiobutton1.checked=true then aufgabe_2_im.visible:=true;
if radiobutton2.checked=true then aufgabe_2_im.visible:=true;
if radiobutton3.checked=true then aufgabe_2_im.visible:=true;
if radiobutton4.checked=true then aufgabe_2_im.visible:=true;

if radiobutton1.checked=true then loesung_2_a_im.visible:=true;
if radiobutton2.checked=true then loesung_2_a_im.visible:=true;
if radiobutton3.checked=true then loesung_2_a_im.visible:=true;
if radiobutton4.checked=true then loesung_2_a_im.visible:=true;

if radiobutton1.checked=true then loesung_2_b_im.visible:=true;
if radiobutton2.checked=true then loesung_2_b_im.visible:=true;
if radiobutton3.checked=true then loesung_2_b_im.visible:=true;
if radiobutton4.checked=true then loesung_2_b_im.visible:=true;

if radiobutton1.checked=true then loesung_2_c_im.visible:=true;
if radiobutton2.checked=true then loesung_2_c_im.visible:=true;
if radiobutton3.checked=true then loesung_2_c_im.visible:=true;
if radiobutton4.checked=true then loesung_2_c_im.visible:=true;

if radiobutton1.checked=true then loesung_2_d_im.visible:=true;
if radiobutton2.checked=true then loesung_2_d_im.visible:=true;
if radiobutton3.checked=true then loesung_2_d_im.visible:=true;
if radiobutton4.checked=true then loesung_2_d_im.visible:=true;
//----------------------------------------------------------------------------//
// Aufgabenbewertung //
if radiobutton1.checked=true then zaehler_falsch:=+1;
if radiobutton2.checked=true then zaehler_falsch:=+1;
if radiobutton3.checked=true then zaehler_falsch:=+1;
if radiobutton4.checked=true then zaehler_richtig:=+1;

if radiobutton1.checked=true then Aufgabe_1_falsch:=1;
if radiobutton2.checked=true then Aufgabe_1_falsch:=1;
if radiobutton3.checked=true then Aufgabe_1_falsch:=1;
if radiobutton4.checked=true then Aufgabe_1_richtig:=1;
// Ende des Vorganges //
//----------------------------------------------------------------------------//
// Den Aufgabentext ändern //
if radiobutton1.checked=true then aufgabe_2_dic.visible:=true;
if radiobutton2.checked=true then aufgabe_2_dic.visible:=true;
if radiobutton3.checked=true then aufgabe_2_dic.visible:=true;
if radiobutton4.checked=true then aufgabe_2_dic.visible:=true;
// Ende des Vorganges //
//----------------------------------------------------------------------------//
// Checkboxes entchecken //
if radiobutton1.checked=true then radiobutton1.checked:=false;
if radiobutton2.checked=true then radiobutton2.checked:=false;
if radiobutton3.checked=true then radiobutton3.checked:=false;
if radiobutton4.checked=true then radiobutton4.checked:=false;
// Ende des Vorganges //
//----------------------------------------------------------------------------//
end;


für aufgabe 3 hab ich einfach den quelltext von aufgabe 2 kopiert und statt 2 eine 3 überall hingeschrieben. das sind alles bilder mit den einzelnen lösungen und fragen, außer aufgabe_2_dic das ist ein richtext feld , ich arbeite übrigens mit Delphi 5 könnt ihr mir helfen???
Code&Titel geändert-FuckRacism
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#2
  Alt 6. Okt 2002, 17:02
Ich hab deinen Code mal etwas vereinfacht!
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin
// wenn eine Lösung eingegeben wurde
if (radiobutton1.checked) or (radiobutton2.checked) or (radiobutton3.checked) or (radiobutton4.checked)
then begin
label7.caption:=' ';
label1.caption:='Frage - 1b';
aufgabe_2_im.visible:=true;
loesung_2_a_im.visible:=true;
loesung_2_b_im.visible:=true;
loesung_2_c_im.visible:=true;
loesung_2_d_im.visible:=true;
aufgabe_2_dic.visible:=true;
end
else
//wenn nicht
label7.caption:='Bitte zuerst eine Antwort auswählen!';
//wars richtig ??
if (radiobutton1.checked) or (radiobutton2.checked) or (radiobutton3.checked)
 then zaehler_falsch:=+1;
if radiobutton4.checked then zaehler_richtig:=+1;

if (radiobutton1.checked) or (radiobutton2.checked) or (radiobutton3.checked)
then Aufgabe_1_falsch:=1;
if radiobutton4.checked=true then Aufgabe_1_richtig:=1;
//Radiobuttons entchecken
radiobutton1.checked:=false;
radiobutton2.checked:=false;
radiobutton3.checked:=false;
radiobutton4.checked:=false;
end;
PS: ich habe es ned geteste also ohne Gewähr.
PSS: Ich hab den Code nur anderst dargestellt, nicht die Funktion des Codes verändert!!!

Du willst doch zaehler_richtig erhöhen, oder ?? das geht aber mit +1 nicht!
Mach das entweder mit
Code:
zaehler_richtig:=zaehler_richtig+1;
oder
Code:
inc(zaehler_richtig);
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
Maverick

Registriert seit: 6. Okt 2002
9 Beiträge
 
#3
  Alt 6. Okt 2002, 17:11
thx ich bin nen programmier anfänger des wegen sieht des wohl so aus
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#4
  Alt 6. Okt 2002, 17:22
HI
außerdem würde ich bei einer Neuen Frage nicht das Alte TImage verstecken und ein Neues anzeigen sodern in das Alte einfach per
image1.Picture.LoadFromFile(<<Dein Bild>>); ein Neues Bild einladen!
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
Maverick

Registriert seit: 6. Okt 2002
9 Beiträge
 
#5
  Alt 6. Okt 2002, 17:45
stimmt ist besser thx
  Mit Zitat antworten Zitat
Maverick

Registriert seit: 6. Okt 2002
9 Beiträge
 
#6
  Alt 6. Okt 2002, 17:49
jo dein quellcode funktioniert
  Mit Zitat antworten Zitat
Maverick

Registriert seit: 6. Okt 2002
9 Beiträge
 
#7
  Alt 6. Okt 2002, 18:29
ich hab wieder ein problem: du hast mir zwar den quellcode erheblich vereinfacht aber der will immer noch nicht aufgabe 3 anzeigen, die will ich auch in TImages anzeigen lassen, aber ich weiss neicht wie ich dem PC sagen soll das er mit dem selben button mit dem er aufgabe 2 aufgerufen hat auch aufgabe 3 auf rufen soll kannst du nmir helfen??
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#8
  Alt 6. Okt 2002, 18:34
Hi,

da Du mit dem Druck auf den gleichen Button unterschiedliche sachen machen möchtest, könntest Du eine globale Intergervariable Deklarieren und bei jeden Druck um +1 erhöhen.
Dann musst Du nur noch abfragen welchen Wert die Var hat und kannst so verschiedene sachen mit dem gleichen Button machen.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Maverick

Registriert seit: 6. Okt 2002
9 Beiträge
 
#9
  Alt 6. Okt 2002, 18:40
Globale interwas??? kannst du mir das näher erklären wie man das macht?? bin anfänger in sachen programmieren
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#10
  Alt 6. Okt 2002, 18:49
Hi,

eine intergelaktische Variable!
Nein, ein globale Integer Variable.

Ganz oben vor dem Implementation steht ein var.
Da ist z.B. Form: TForm; aufgelistet.
Da drunter schreibst Du Deine Variable rein:

Nenn sie wie Du willst.

MyVar: Integer; //Das ist nun eine globale Integer Variable. Sprich im "ganzen" Porgramm bekannt.

Immer wenn Du den Button klickst, erhöhst Du diese Variable um 1.

MyVar := MyVar +1; //Also in der Proz. des Buttons

drunter kommt jetzt Dein normaler Code.
Jetzt brauchst Du nur noch abfragen welchen Wert die Var hat.

if MyVar = 1 then
begin
tue.dies := und.das
end
else if = 2 then
begin
tue.jetzt := was.anderes;
end
else if ..........

Soweit KLar?

Grüsse, Daniel
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 15:14 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