Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Для тех кто видел программу и для тех кто ее не видел, в чем дело


valievrf ©   (2002-04-10 17:00:00) 

Вообщем я внес корректвы, теперь в массив у меня вводятся номера вопросов еще до того как программа откроется, на методе OnShow

Но есть ошибка, программа не хочет переходить на вопрос, на который ему указывает массив.
В чем трабл???

Код программы:


unit Unit4;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, DBCtrls, Db, DBTables;

type
TForm4 = class(TForm)
DBMemo1: TDBMemo;
DataSource1: TDataSource;
Table1: TTable;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
DBText1: TDBText;
DBText2: TDBText;
DBText3: TDBText;
DBText4: TDBText;
DBText5: TDBText;
Label8: TLabel;
Edit1: TEdit;
Label10: TLabel;
Shape1: TShape;
Button1: TButton;
DBText6: TDBText;
procedure FormActivate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form4: TForm4;
Balls:integer;
proideno:integer;
b:array of string;
m, j:integer;
k:string;
implementation

uses Unit1;

{$R *.DFM}

procedure TForm4.FormActivate(Sender: TObject);
begin
Form1.visible:=false;
Table1.FindKey([Random(7)]);
end;

procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Table1.FindKey([Random(7)]);
Form1.visible:=true;
Balls:=0;
proideno:=0;
end;



procedure TForm4.Timer1Timer(Sender: TObject);
begin
Label10.caption:=TimeToStr(Time);
end;

procedure TForm4.Button1Click(Sender: TObject);
begin
if m >=3 then begin
Form4.close;
k:=IntToStr(Balls);
ShowMessage("Вы прошли тест на " + k + " баллов");
end
else
begin=StrToInt(Table1.FieldByName("Ball").Value) + Balls
end;
m:=m+1;
Table1.FindKey(b[m]);
Table1.
Edit1.text:="";
end;



procedure TForm4.FormShow(Sender: TObject);
var
l:integer;
begin
For m:=1 to 3 do
begin
Table1.FindKey([Random(7)]);
b[m]:=Table1.FieldByName("Questonn").Value;
For j:=1 to m-1 do
begin
if b[j] = b[m] then l:=m-1 else l:=m;
end;
end;
end;


dymka   (2002-04-10 21:22:00) [1]

Мой совет:
На бумажке конкретно расписать последовательность действий, что должна делать программа, и только потом писать прогу... Вопрос задаешь ты не первый раз и видно, что ты сам слабо представляешь, что нужно получить...
Не пренебрегай таким советом... Я сам часто пишу программы сначала на бумаге, бывает даже в виде рассказа...
Второе - объясни подробнее задачу, и возможно тебе подскажут более изящные решения...


Наверх

Титульная страница Поиск, карта сайта Написать письмо