Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 10.08.2011, 18:59   #1 (permalink)
Malamadre
Новичок
 
Регистрация: 10.08.2011
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Question Работа с Boolean в ООП

вообщем застрял на булевской переменной в ООП,
сначала объясню задачу :

задача такая, контора по приему б/у автомобилей : класс должен принимать стоимость нового авто(ну это я знаю), с помощью переменной boolean, минусовать со стоимости нового авто сколько то процентов, чтобы определить стоимость принимающего б/у авто ( ну вот например : три перменные FPriceNewCar(цена нового такого же авто), FPriceItog(итоговая выплачиваема цена), и булевская переменная FPainted(крашенный или нет) ,, булевскую переменную определяет RadioButton на форме, если его включить то авто крашенный, и в клаасе должно минусоваться со стоимости нового авто сколько то процентов(определить выплачиваемую стоимость) )

Вообщем проблема в том что, я не знаю как работать с BOOLEAN в ООП
в инете не нашел

как мне FPainted связать с RadioButton ? как описать его в свойствах, методах, процедурах и т д ,, нуу вообщем интересует работа с булевской перемменной ИМЕННО в ООП


ну вот и сам код :

Код:
TCar = class
  private
 
        FPainted : boolean;       //крашенный, некрашенный
        FPriceNewCar : integer;   //стоимость нового автомобиля
        FPriceItog : integer;     //стоимость выплачиваемая клиенту(хозяину авто)
 
        procedure setpainted(x: boolean);        
          function getpainted(): boolean;

        procedure setpricenewcar(x: integer);    //     уст цены новой машины
          function getpricenewcar(): integer;

          function getpriceitog(): integer;     //      получ цены старой машины  
     
  public
 
       property painted     : boolean read getpainted write setpainted;
       property pricenewcar : integer read getpricenewcar write setpricenewcar;
       property priceitog   : integer read getpriceitog;


 
end;
 
implementation
 
     procedure setpainted(x: boolean);
     begin
 
        fpainted := x;
     end;
 
        function getpainted(): boolean;
        begin
           getpainted := fpainted;
        end;

     procedure setpricenewcar(x: integer);
     begin
        fpricenewcar := x;
     end;

        function getpricenewcar(): integer;
        begin
           getpricenewcar := fpricenewcar;
        end;

        function getpriceitog(): integer;
        begin

        end;
 
end;

как мне FPainted связать с RadioButton ? как описать его в свойствах, методах, процедурах и т д ,, нуу вообщем интересует работа с булевской перемменной ИМЕННО в ООП

и выложите если не трудно побольше ПРОСТЫХ ну или же средних по сложности примеров с Boolean в ООП делфи


спасибо всем заранее,,
Malamadre вне форума   Ответить с цитированием

Старый 10.08.2011, 18:59
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Дам вам ссылки на темы которые схожи с вашей

Работа принтера
Конкурсная работа
Работа с оргстеклом
Работа с файлами
Работа с файлами

Старый 10.08.2011, 19:43   #2 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
По умолчанию

Переменные булевского типа принимают одно из двух значений: истина (true) и ложь (false). Такие переменные иначе называют логическими. С алгеброй логики встречались когда нибудь? Вот там все переменные как раз таки логического типа.

Вот так считывается положение радиобатона, и в зависимости от этого выбирается значение флага (булевской переменной):
Код:
{var flag:boolean;}
if RadioButton1.Checked then
    flag:=true
  else
    flag:=false;
Ну можно и более простым способом:
Код:
{var flag:boolean;}
  flag:=RadioButton1.Checked;
Только в этом случае надо учесть, что свойство объекта (подчеркнуто) тоже булевского типа, то есть либо Checked, либо не Checked.

А дальше уже проверяете, если значение флага - истина, то есть машина перекрашена, то выполняйте вычитание, или другие необходимые операции.
Будут еще вопросы - задавайте.
MrSTEP вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 10:46.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.