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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.04.2010, 20:11   #1
XKillah
 
Регистрация: 08.04.2010
Сообщений: 3
По умолчанию Проблема с доступом между компонентами С++

Здравствуйте. В общем пишу игру с пресловутым полем, на котором будут расставляться фишечки. Проблема в том, что TDrawGrid не может использовать методы моего класса-матрицы (куда будут записываться расставленные фишечки). Обработчик по нажатию на клетку (OnSelectCell) выдает "Access violation..." Как обойти проблемы с доступом? (Методы класса-матрицы само собой в public)
XKillah вне форума Ответить с цитированием
Старый 09.04.2010, 05:39   #2
MaxNik2009
Форумчанин
 
Аватар для MaxNik2009
 
Регистрация: 17.09.2009
Сообщений: 294
По умолчанию

Ты не попутал? это вроде как ты про Delphi говоришь. А в теме C++.
принимаю благодарности в письменном виде( весы слева)...
MaxNik2009 вне форума Ответить с цитированием
Старый 09.04.2010, 06:32   #3
XKillah
 
Регистрация: 08.04.2010
Сообщений: 3
По умолчанию

Нет, не попутал, это С++ Builder.
XKillah вне форума Ответить с цитированием
Старый 09.04.2010, 10:42   #4
Скарам
Дружите с Linq ;)
Форумчанин
 
Аватар для Скарам
 
Регистрация: 15.10.2008
Сообщений: 822
По умолчанию

Выложи текст программы,а то так мы будем гадать на кофейной гуще.
Не давай организму поблажки, каждый день тренируй его в шашки..
Скарам вне форума Ответить с цитированием
Старый 09.04.2010, 17:54   #5
XKillah
 
Регистрация: 08.04.2010
Сообщений: 3
По умолчанию

Это unit1.h
class pole {
private:
public: int **m;
pole (int c)
{
m=new int*[c];
for (int i; i < c; i++)
{m[i]=new int[c];
for (int j = 0; j < 10; j++) { m[i][j]=0;};
};
};

void put (int c, int r)
{m[c][r]=1;};

};

class TForm1 : public TForm
{
__published: // IDE-managed Components
TDrawGrid *DrawGrid1;
TLabel *Label1;
TLabel *Label2;
TLabel *Label3;
void __fastcall DrawGrid1SelectCell(TObject *Sender, int ACol, int ARow,
bool &CanSelect);
void __fastcall DrawGrid1DrawCell(TObject *Sender, int ACol, int ARow,
TRect &Rect, TGridDrawState State);
void __fastcall FormCreate(TObject *Sender);
private: // User declarations
public:
pole *p; // User declarations
__fastcall TForm1(TComponent* Owner);
};

А это обработчики из unit1.cpp :


void __fastcall TForm1::FormCreate(TObject *Sender)
{p=new pole (9);
};

void __fastcall TForm1::DrawGrid1SelectCell(TObject *Sender, int ACol, int ARow, bool &CanSelect)
{ Form1->Label1->Caption=IntToStr(ACol)+IntToStr(AR ow);
p->put(ACol, ARow);

DrawGrid1->Canvas->Ellipse(ACol*(DrawGrid1->DefaultColWidth+1)+2,
ARow*(DrawGrid1->DefaultRowHeight+1)+2,
(ACol+1)*(DrawGrid1->DefaultColWidth+1)-2,
(ARow+1)*(DrawGrid1->DefaultRowHeight+1)-2) ;
}


//---------------------------------------------------------------------------
XKillah вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
MySQL - проблема с доступом по сети TaTT DoGG Софт 1 17.02.2010 13:32
Переход между компонентами UnChanter Помощь студентам 2 11.01.2010 01:08
Проблема с доступом в сети Ronni10 Операционные системы общие вопросы 6 07.10.2008 21:34
Переход между компонентами stepchild Общие вопросы Delphi 5 29.05.2008 20:07
Проблема с доступом к папкам Romanus Свободное общение 0 07.10.2007 18:52