Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2012, 13:12   #1
Abay19941308
Пользователь
 
Регистрация: 29.10.2012
Сообщений: 64
По умолчанию Не получается создать меню в курсовой работе!!!

При запуске программы загружается и меню и игра одновременно!!!
(Как на картинке)
Я хочу чтобы сначала выходило меню, а при нажатии на кнопку "Новая игра" запустилась игра.
Вот собственно код программы
Код:
 
uses graphabc,Events,ABCObjects;
const nmax=9;
type mas=array [1..nmax,1..nmax] of byte;
var Mk:array [1..9, 1..9] of PictureABC;
a: mas; n: byte;
ll,zp,menu1, menu2, menu3, menu4, menu11, menu12, menu13, menu14, m1, m11, m2, m12, m3, m13, m4, m14, m5, m15, m6, m16, back, back1:PictureABC;
k,b,i,j,i1,j1,flag,flag1,u:integer;
xk,yk: integer;
 
 
 
 
procedure MouseMove(x,y,mb: integer);
begin
if u=1 then
  begin
  if menu1.PtInside(x,y)= true then
  menu11.visible:=true
  else
  menu11.visible:=false;
 
 if menu4.PtInside(x,y)= true then
  menu14.visible:=true
  else
  menu14.visible:=false;
  end
else
 
  begin
  if back.ptinside(x,y)=true then
  back1.visible:=true
  else
  back1.visible:=false;
  end;
  end;
 
 
procedure numb(x,y,n: integer);
begin
ll:=PictureABC.Create(x,y,'bamboo'+inttostr(n)+'.png');
end;
 
 
procedure GenMap(var z: mas; var n: byte);
var i,j,ik,jk:byte;
begin
n:=9; ik:=random(n)+1; jk:=random(n)+1;
for i:=1 to n do
    for j:=1 to n do
        begin
        while z[ik,jk]<>0 do
              begin
              ik:=random(n)+1; jk:=random(n)+1;
              end;
        z[ik,jk]:=j;
        end;
end;
 
procedure DrawMap(z: mas; n: byte);
var i,j: byte; x,y: integer;
begin
n:=9;
for i:=1 to n do
    for j:=1 to n do
        begin
        xk:=25+(43*i); yk:=25+(60*j);
 
        mk[i,j]:= PictureABC.Create(xk,yk,'bamboo'+inttostr(a[i,j])+'.png');
        end;end;
 
 
procedure mousedown(x,y,mb:integer);
begin //1
if u=1 then
  begin //2
  if menu1.PtInside(x,y)= true then
     begin
     {что сюда писать}
 
 
     end;
  if menu4.PtInside(x,y)= true then
  begin  //5
  CloseWindow;
  end; //-5
  end  //-2
else
  begin //6
  if u=0 then
  begin  //7
  if back.PtInside(x,y)= true then
     begin  //8
       u:=2;
 
 
 
 
       menu1.visible:=true;
       menu4.visible:=true;
 
     end;  //-8
 
 
 
 
  end //-7
  else
  begin //9
  if back.PtInside(x,y)= true then
     begin   //10
       u:=1;
 
       LoadWindow ('50.bmp');
       back.visible:=false;
       back1.visible:=false;
       menu1.visible:=true;
       menu4.visible:=true;
 
     end;   //-10
  end;  //-9
 
 
 
//второй клик
 if (k<>0) and (b<>0) then
 begin  //11
  flag1:=0;
for i:=1 to n do
    for j:=1 to n do
    if a[i,j]<>0 then if mk[i,j].ptinside(x,y)=true then
   if a[i,j] =  a[k,b]  then begin {12} mk[i,j].destroy; mk[k,b].destroy; a[i,j] :=0;  a[k,b]:=0; flag1:=1; end;//-12
   end;   //-11
 
if (flag1 = 0) then begin {13}  zp.visible:=false; k:=0; b:=0; end; //-13
 
 
flag:=0;
for i:=1 to n do
    for j:=1 to n do
if a[i,j]<>0 then if mk[i,j].ptinside(x,y)=true then begin //14
zp.visible:=true;
zp.moveto(mk[i,j].left,mk[i,j].top);
mk[i,j].tofront;
k:=i;
b:=j;
flag:=1;
//k,b - номер уже выделенного элемента  флаг для проверки выделения
 
 
 
//mk[i,j].destroy; //выделять  метка 1
 
//a[i,j]:=0;
//mk[i+1,j+1].destroy;
end;//-14
 
if (flag = 0) then begin {15} zp.visible:=false; k:=0; b:=0; end; //-15
 
 
end; //-6
end; // -1
 
 
begin
LoadWindow ('100.PNG');
SetWindowSize(648,496);
centerwindow;
OnMouseMove:=MouseMove;
OnMouseDown:=MouseDown;
 
 zp:=CreatePictureABC(0,200,'11.bmp');
 zp.width:=45;
 zp.height:=60;
 zp.visible:=false;
k:=0;
b:=0;
i1:=1;j1:=1;
GenMap(a,n);
DrawMap(a,n);
 
menu1:=CreatePictureABC(0,100,'52.bmp');
  menu11:=CreatePictureABC(0,100,'52 1.bmp');
  menu11.visible:=false;
  menu4:=CreatePictureABC(0,340,'55.bmp');
  menu14:=CreatePictureABC(0,340,'55 1.bmp');
  menu14.visible:=false;
  back:=CreatePictureABC(0,540,'back.bmp');
  back.visible:=false;
  back1:=CreatePictureABC(0,540,'back1.bmp');
  back1.visible:=false;
 
 
end.


Скиньте пожалуйста хоть кусочек кода или желательно готовое меню с игрой.
Изображения
Тип файла: jpg rgwh.jpg (76.9 Кб, 105 просмотров)
Вложения
Тип файла: rar курсовая работа 1215.rar (1.46 Мб, 5 просмотров)

Последний раз редактировалось Stilet; 23.12.2012 в 13:26.
Abay19941308 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в курсовой работе. Abay19941308 Паскаль, Turbo Pascal, PascalABC.NET 12 30.10.2012 05:40
Помогите пожалуйста сделать задания по курсовой работе. Gangzta Помощь студентам 17 12.06.2011 12:11
создать форму на форме разработать меню и создать кнопки конец и о программе Андрей_И Помощь студентам 1 23.05.2011 23:42
задача по курсовой работе Эдик1992 Помощь студентам 5 06.04.2011 22:26
Создать меню и подключить свое меню OgE®_M@G Microsoft Office Excel 9 26.11.2010 07:41