|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.12.2011, 21:31 | #1 |
Пользователь
Регистрация: 17.09.2010
Сообщений: 44
|
C++ Builder не видит функции моего класса в чем проблема?
в unit2.cpp
После TForm2 *Form2; дописал TGame *Game; На форм креате не видет не 1 функции пишу Game-> листинг кода unit2.h //--------------------------------------------------------------------------- #ifndef Unit2H #define Unit2H //--------------------------------------------------------------------------- #include <Classes.hpp> #include <Controls.hpp> #include <StdCtrls.hpp> #include <Forms.hpp> #include <ADODB.hpp> #include <Buttons.hpp> #include <DB.hpp> #include <ExtCtrls.hpp> #include <jpeg.hpp> //--------------------------------------------------------------------------- class TForm2 : public TForm { __published: // IDE-managed Components TImage *Image1; TImage *Image2; TImage *Image3; TBitBtn *BitBtn1; TBitBtn *BitBtn2; TBitBtn *BitBtn3; TBitBtn *BitBtn4; TADOConnection *ADOConnection1; TADOTable *ADOTable1; TWideStringField *ADOTable1DSDesigner; TWideStringField *ADOTable1type; TWideStringField *ADOTable1vopros; TWideStringField *ADOTable1v1; TWideStringField *ADOTable1v2; TWideStringField *ADOTable1v3; TWideStringField *ADOTable1v4; TWideStringField *ADOTable1otvet; TWideStringField *ADOTable1path; TLabel *Label1; TLabel *Label2; TTimer *Timer1; TLabel *Label3; TLabel *Label4; private: // User declarations public: // User declarations __fastcall TForm2(TComponent* Owner); }; class TGame{ int list[30],Nvop,vopros,colvop,time,sum; void init(); void poiskvop(); void rastanovka(TTimer *Timer1,TADOTable *ADOTable1,TImage *Image2, TLabel *Label1, TLabel *Label2,TBitBtn *BitBtn1, TBitBtn *BitBtn2, TBitBtn *BitBtn3, TBitBtn *BitBtn4); void otvet(AnsiString a,TADOTable *ADOTable1,TLabel *Label4); }; void TGame::init(){ time=30; sum=0; colvop=150; Nvop=0;} void TGame:oiskvop(){ randomize(); vopros=random(150); if (vopros==0) vopros=1; int i; for(i=1;i<30;i++) if(list[i]==vopros){ vopros=random(150); i=1; } list[Nvop]=vopros; Nvop++; } void TGame::rastanovka(TTimer *Timer1,TADOTable *ADOTable1,TImage *Image2, TLabel *Label1, TLabel *Label2,TBitBtn *BitBtn1, TBitBtn *BitBtn2, TBitBtn *BitBtn3, TBitBtn *BitBtn4){ int a; randomize(); a=random(4); ADOTable1->Filtered=false; ADOTable1->Filter="¹="+QuotedStr(IntToStr(vop ros)); ADOTable1->Filtered=true; if (ADOTable1->FieldByName("type")->AsString=='T') { Image2->Picture->LoadFromFile("pic/back3.jpg"); Label1->Caption=ADOTable1->FieldByName("vopros")->AsString; } if (ADOTable1->FieldByName("type")->AsString=='P') { Image2->Picture->LoadFromFile(ADOTable1->FieldByName("path")->AsString); Label2->Caption=ADOTable1->FieldByName("vopros")->AsString; } if(a==0) { BitBtn1->Caption=ADOTable1->FieldByName("v1")->AsString; BitBtn2->Caption=ADOTable1->FieldByName("v2")->AsString; BitBtn3->Caption=ADOTable1->FieldByName("v3")->AsString; BitBtn4->Caption=ADOTable1->FieldByName("v4")->AsString; } if(a==1) { BitBtn1->Caption=ADOTable1->FieldByName("v3")->AsString; BitBtn2->Caption=ADOTable1->FieldByName("v2")->AsString; BitBtn3->Caption=ADOTable1->FieldByName("v4")->AsString; BitBtn4->Caption=ADOTable1->FieldByName("v1")->AsString; } if(a==2) { BitBtn1->Caption=ADOTable1->FieldByName("v4")->AsString; BitBtn2->Caption=ADOTable1->FieldByName("v3")->AsString; BitBtn3->Caption=ADOTable1->FieldByName("v1")->AsString; BitBtn4->Caption=ADOTable1->FieldByName("v2")->AsString; } if(a==3) { BitBtn1->Caption=ADOTable1->FieldByName("v2")->AsString; BitBtn2->Caption=ADOTable1->FieldByName("v1")->AsString; BitBtn3->Caption=ADOTable1->FieldByName("v4")->AsString; BitBtn4->Caption=ADOTable1->FieldByName("v3")->AsString; } Timer1->Enabled=true; } void TGame:tvet(AnsiString a,TADOTable *ADOTable1,TLabel *Label4){ if(a==ADOTable1->FieldByName("otvet")->AsString) { sum+=(time*3); Label4->Caption=IntToStr(sum); poiskvop(); time=30; } else { Label4->Caption=IntToStr(sum); poiskvop(); time=30; } } //Êîíåö êëàññà //--------------------------------------------------------------------------- extern PACKAGE TForm2 *Form2; //--------------------------------------------------------------------------- #endif Скажите хотябы где создать процедуры и куда вписать глобальные переменные чет все забыл (( если с классом не получиться Я писал переменные после __fastcall TForm2(TComponent* Owner); int time; и на unit2.cpp писал после TForm2 *Form; void init(){ time=30;} но он ругаеться на time тип не видит в процедуре или как оно функция (( После ActivScript тяжко) По классу пробовал еще писать так TGame *Game = new TGame; и все равно не видит не одной void __fastcall TForm2::FormCreate(TObject *Sender) { Game->init(); <- не нравиться(( } Последний раз редактировалось SevenXP; 15.12.2011 в 21:40. |
18.12.2011, 19:46 | #2 |
Пользователь
Регистрация: 17.09.2010
Сообщений: 44
|
Cпасибо что не кто не помог проблема была в том что с доступом public работает нормально но я немного не понял чего с приватам вызвать не смог но и вроде понял
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обращение к из одной функции класса к другой того же класса,не указывая к какому объекту она относиться | zipwind | C++ Builder | 1 | 09.04.2011 17:18 |
Классы.Не видит переменные из самого класса...Вилы=( | Rid | Общие вопросы Delphi | 3 | 26.04.2010 12:32 |
Как мне из моего класса вывести сообщение? | Utkin | Общие вопросы Delphi | 9 | 19.11.2009 14:43 |
Класс не видит обЪект Borland C++ Builder | firefox0013 | C++ Builder | 11 | 01.10.2009 17:30 |
Чем различаются функции чтения класса istream C++ | Go6a | Помощь студентам | 3 | 25.04.2008 11:04 |