Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] небольшая игра


Автор: archer777 20.12.2011, 20:50
Здравствуйте! начал писать программу на delphi, но вот в чем проблема: когда запускаю программу, нажимаю на кнопку,1) затем при нажатии клавиши "назад" она не работает, и появляется начальное окно,2) если выбираю уровень сложности, то клавиша "назад" отбрасывает меню на 1 шаг, а потом снова не работает. Подскажите пожалуйста, где ошибка в коде? Заранее спасибо!

Код

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Image1: TImage;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Image2: TImage;
    Button7: TButton;
    Button8: TButton;
    Image3: TImage;
    Label1: TLabel;
    Button9: TButton;
    Button10: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  a,b,c: Integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
c:= 1;
a:= 1;
Button1.Hide;
Button2.Hide;
Button3.Hide;
Image1.Hide;
Button4.Show;
Button5.Show;
Button6.Show;
Image2.show;
Button7.Show;
Button10.Show;
end;

procedure TForm1.Button8Click(Sender: TObject);
begin
Form1.Close;
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
Button1.Show;
Button2.Show;
Button3.Show;
Image1.Show;
Button8.show;
Button4.Hide;
Button5.Hide;
Button6.Hide;
Button7.Hide;
Image2.Hide;
Image3.Hide;
Button10.Hide;
Button9.Hide;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
b := 3;
c := 2;
Button4.Hide;
Button5.Hide;
Button6.Hide;
Image2.Hide;
label1.Show;
Image3.Show;
Button9.Show;





end;

procedure TForm1.Button5Click(Sender: TObject);
begin
b := 2;
c := 2;
Button4.Hide;
Button5.Hide;
Button6.Hide;
Image2.Hide;
label1.Show;
Image3.Show;
Button9.Show;
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
b := 3;
c := 2;
Button4.Hide;
Button5.Hide;
Button6.Hide;
Image2.Hide;
label1.Show;
Image3.Show;
Button9.Show;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
a:= 2;
c:= 1;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
a:= 3;
c:= 1;
end;

procedure TForm1.Button10Click(Sender: TObject);
begin
if c= 1
Then
Button1.Show;
Button2.Show;
Button3.Show;
Image1.Show;
Button8.show;
Button4.Hide;
Button5.Hide;
Button6.Hide;
Button7.Hide;
Image2.Hide;
Image3.Hide;
Button10.Hide;
Button9.Hide;
if c= 2
Then
C := 1;
Button4.Show;
Button5.Show;
Button6.Show;
Button7.Show;
Image2.Show;
label1.Show;
Image3.Hide;
Button9.Hide;
Button2.Hide;
Button3.Hide;
Button10.Show;
Button9.Hide;

end;

end.





Автор: Данкинг 20.12.2011, 20:59
Переформулируй вопрос. И приведи код только тот, который относится к вопросу, а не весь.

Автор: MetalFan 20.12.2011, 22:03
Данкинг, да опять студенты набежали... стянули где-то полурабочий код, теперь маются. тему в ЦП...

Автор: MetalFan 20.12.2011, 22:04
Для домашних заданий, курсовых, существует "Центр Помощи".

Тема перенесена! 

Автор: Данкинг 20.12.2011, 22:19
Цитата(MetalFan @  20.12.2011,  23:03 Найти цитируемый пост)
опять студенты набежали

Да я уж тоже заметил, как за последнюю неделю активность оных увеличилась. В общем, ждём подробностей про кнопку "умножайка".

Автор: archer777 21.12.2011, 15:05
Я не студент, а школьник! Программу пишу просто для освоения языка, так сказать тренировка.Конкретный вопрос-конкретный ответ:вот пожалуйста, именно та часть кода, которая нужна(я думал вам будет удобнее видеть весь код целиком):
Она не работает, не пойму почему
Код

if c= 2
Then
C := 1;
Button4.Show;
Button5.Show;
Button6.Show;
Button7.Show;
Image2.Show;
label1.Show;
Image3.Hide;
Button9.Hide;
Button2.Hide;
Button3.Hide;
Button10.Show;
Button9.Hide;




Автор: Данкинг 21.12.2011, 15:49
Не знаю, что там должно работать, но думаю, что begin...end там не помешает:
Код

if c= 2 Then
 begin 
  C := 1; 
  Button4.Show;
  Button5.Show;
  Button6.Show;
  Button7.Show;
  Image2.Show;
  label1.Show;
  Image3.Hide;
  Button9.Hide;
  Button2.Hide;
  Button3.Hide;
  Button10.Show;
  Button9.Hide;
 end;


Цитата(archer777 @  21.12.2011,  16:05 Найти цитируемый пост)
Программу пишу просто для освоения языка, так сказать тренировка.

Охотно верим! smile 

Автор: archer777 21.12.2011, 16:35
не помогло(

Автор: Данкинг 21.12.2011, 17:06
Тогда просвети, что должно работать.

Автор: archer777 23.12.2011, 18:45
Извиняюсь, что долго не было, винду переставлял.Вот я залил на mail программу, если посмотрите сразу поймете, что я имею ввиду

Автор: Mirkes 6.1.2012, 18:56
Цитата(archer777 @  23.12.2011,  18:45 Найти цитируемый пост)
Извиняюсь, что долго не было, винду переставлял.Вот я залил на mail программу, если посмотрите сразу поймете, что я имею ввиду 


Ссылки нет. Я по коду сделал вариант, но кроме странным образом перемещающихся кнопок ничего не понял. Видимо нужен весь проект.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)