ABCButtons и импровизированные окна GraphABC - PascalABC.NET
Формулировка задачи:
Есть меню из ABCButtons. Есть импровизированное окно GraphABC с кнопками ABCButtons, которое запускается при выборе одного из пунктов. Проблема в том, что кнопки меню накладываются поверх окна.
Пытался решить проблему делая кнопки невидимыми, но это не работает.
Листинг программы
- uses ABCButtons, GraphABC, ABCObjects;
- var
- GN: string;
- w,h,btn1: integer;
- ifs: boolean;
- mm: Picture;
- NewGW: RectangleABC;
- procedure init;
- begin
- GN:='Space Program';
- w:=640;
- h:=480;
- ifs:=true;
- SetWindowCaption (GN);
- SetWindowSize(w,h);
- CenterWindow;
- SetWindowIsFixedSize(ifs);
- end;
- procedure NGWS;
- begin
- NewGW:=new RectangleABC(100,100,440,200);
- NewGW.Text:='ВНИМАНИЕ!';
- var BtnNext:= new ButtonABC(120,250,150,40,'Продолжить',clMoneyGreen);
- var BtnBack:= new ButtonABC(370,250,150,40,'Назад',clMoneyGreen);
- end;
- procedure GameMenu; forward;
- procedure NGW;
- begin
- Btn1:=1;
- GameMenu;
- end;
- procedure GameMenu;
- begin
- mm:=Picture.Create(640,480);
- mm.Load('data/images/mm.bmp');
- mm.Draw(0,0);
- var BtnNewGame:= new ButtonABC(220, 200, 200, 50, 'Новая игра', clMoneyGreen);
- BtnNewGame.OnClick:=NGW;
- var BtnContinium:= new ButtonABC(220, 260, 200, 50, 'Продолжить', clMoneyGreen);
- var BtnSetting:= new ButtonABC(220, 320, 200, 50, 'Настройки', clMoneyGreen);
- var BtnExit:= new ButtonABC(220, 380, 200, 50, 'Выход', clMoneyGreen);
- if Btn1=1 then
- begin
- BtnNewGame.Visible:=false;
- BtnContinium.Visible:=false;
- BtnSetting.Visible:=false;
- BtnExit.Visible:=False;
- NGWS;
- end;
- end;
- begin
- init;
- GameMenu
- end.
Решение задачи: «ABCButtons и импровизированные окна GraphABC»
textual
Листинг программы
- BtnContinium, BtnSetting, BtnExit, BtnNewGame: ButtonABC;
Объяснение кода листинга программы
- Объявлены переменные-кнопки типа ButtonABC: BtnContinium, BtnSetting, BtnExit, BtnNewGame.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д