Помогает с TGrid

Я новичок в C ++ Builder и мне действительно нужна помощь. В моей работе мы должны использовать C ++ Builder, и я не могу найти много документации по этому поводу.

То, что я хочу сделать, это вставить новую строку с некоторыми данными в каждом столбце каждый раз, когда пользователь нажимает Вставить ключ. Всего в моей TGrid 20 строк: 1 TCheckColumn и 19 TStringColumn,

Я не знаю, как это сделать. Во-первых, вот код, который я уже написал, когда кто-то вводит ключ вставки:

void __fastcall TForm2::Grid1KeyDown(TObject *Sender, WORD &Key, System::WideChar &KeyChar,
TShiftState Shift)
{
switch(Key)
{
case VK_INSERT:
if(Grid1->RowCount>MAXTask){}else
{
Label1->Text  = "number Task: "+IntToStr(++nmbertask);
Grid1->RowCount++;
}
break;
}
}

Здесь Grid1GetValue() а также Grid1SetValue() код:

void __fastcall TForm2::Grid1GetValue(TObject *Sender, const int Col, const int Row,
TValue &Value)
{
switch(Col)
{
case 0:
Value = A[Col][Row]; break;
case 1:
Value = A[Col][Row]; break;
case 2:
Value = A[Col][Row]; break;
case 3:
Value = A[Col][Row]; break;
case 4:
Value = A[Col][Row]; break;
case 5:
Value = A[Col][Row]; break;
case 6:
Value = A[Col][Row]; break;
case 7:
Value = A[Col][Row]; break;
case 8:
Value = A[Col][Row]; break;
case 9:
Value = A[Col][Row];break;
case 10:
Value = A[Col][Row];break;
case 11:
Value = A[Col][Row];break;
case 12:
Value = A[Col][Row];break;
case 13:
Value = A[Col][Row];break;
case 14:
Value = A[Col][Row];break;
case 15:
Value = A[Col][Row];break;
case 16:
Value = A[Col][Row];break;
case 17:
Value = A[Col][Row];break;
case 18:
Value = A[Col][Row]; break;
case 19:
Value = A[Col][Row];break;
}
}

void __fastcall TForm2::Grid1SetValue(TObject *Sender, const int Col, const int Row,
const TValue &Value)
{
switch(Col)
{
case 0:
A[Col][Row] = Value; break;
case 1:
A[Col][Row] = Value; break;
case 2:
A[Col][Row] = Value; break;
case 3:
A[Col][Row] = Value; break;
case 4:
A[Col][Row] = Value; break;
case 5:
A[Col][Row] = Value; break;
case 6:
A[Col][Row] = Value; break;
case 7:
A[Col][Row] = Value; break;
case 8:
A[Col][Row] = Value; break;
case 9:
A[Col][Row] = Value; break;
case 10:
A[Col][Row] = Value; break;
case 11:
A[Col][Row] = Value; break;
case 12:
A[Col][Row] = Value; break;
case 13:
A[Col][Row] = Value; break;
case 14:
A[Col][Row] = Value; break;
case 15:
A[Col][Row] = Value; break;
case 16:
A[Col][Row] = Value; break;
case 17:
A[Col][Row] = Value; break;
case 18:
A[Col][Row] = Value; break;
case 19:
A[Col][Row] = Value; break;
}
}

Это то, что я сделал до сих пор. Я никогда не разрабатывал в C ++ Builder, так что вы можете мне помочь, пожалуйста? Я на самом деле не ищу письменное решение, я действительно ищу указание, где искать решение.

Если мне не ясно, пожалуйста, укажите это, чтобы я мог дать больше информации. Если у вас также есть хороший сайт с хорошей документацией по C ++ Builder, сообщите мне об этом. Английский не мой родной язык, но я сделаю все возможное.

1

Решение

Вы можете найти TGrid документация на Embarcadero’s DocWiki. Посмотрите на страницу «Методы», чтобы понять, как вставлять и удалять элементы в вашем TGrid, Есть два метода, которые могут вам помочь: InsertComponent() и `InsertObject ().

Кроме того, в вашем Grid1GetValue() а также Grid1SetValue() методы, вы используете switch заявление. Во всех этих случаях вы делаете одну и ту же работу:

Value = A[Col][Row];break;

Таким образом, вместо использования switchВы можете просто позвонить один раз Value = A[Col][Row]; и это сделает тот же результат.

Я надеюсь, что мой ответ может помочь вам. По крайней мере, я ответил на то, что понял из вашего вопроса.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]