//------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
AnsiString ZnachCell;
int KorRow, KorCol;
//------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//------------------------------------------------------------------------
void __fastcall TForm1::FormShow(TObject *Sender)
{
int i;
AnsiString NLF, DateNau;
DateNau = DateTimeToStr(Date());
for (i=1;i<13;i++)
{
NLF = IntToStr(i)+"2007.txt";
StringGrid1->Cols->LoadFromFile(NLF);
}
StringGrid1->Cols[0]->LoadFromFile("ColDDR.txt");
StringGrid1->ColWidths[0]=210;
for (i=1;i<15;i++)
StringGrid1->Cells[0]= i;
StringGrid1->Rows[5]->Text = "------------------------------------------";
for (i=0;i<15;i++)
StringGrid1->Cells[5] = "-----------------------------------------------";
}
//------------------------------------------------------------------------
void __fastcall TForm1::StringGrid1SelectCell(TObject *Sender, int ACol,
int ARow, bool &CanSelect)
{
ZnachCell = StringGrid1 ->Cells [ACol ][ARow ];
KorCol = ACol;
KorRow = ARow;
EditTextCell->Text = ZnachCell;
}
//------------------------------------------------------------------------
void __fastcall TForm1::BtnPrimClick(TObject *Sender)
{
StringGrid1 ->Cells [KorCol][KorRow] = EditTextCell->Text;
}
//------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
int i;
AnsiString NLF;
for (i=1;i<13;i++)
{
NLF = IntToStr(i)+"2007.txt";
StringGrid1->Cols->SaveToFile(NLF);
}
//------------------------------------------------------------------------
Вылетает при завершении
"/* TCustomForm.Destroy */ inline __fastcall virtual ~TForm(void) { }"
оно мне не мешает, но в чём дело и как можно исправить мне интересно.
\\Зарание благодарен.\\
а вообще интересно было бы код посмотреть
\\спасибо что откликнулся\\
Вот код:
Всё вроде бы чесно, кроме того,
что если ты не выбираешь в стринггриде поле, т.е. не вызывается функция StringGrid1SelectCell, а жмешь сразу кнопку Prim, а при этом в стринг гриде случаем не с 1 начинаются колонки (этот факт не помню).
Мож че-то и происходит.
Замечания:
1. переменные KorRow, KorCol все-таки я б инициализировал какими-то безобидными значениями.
2. в функции BtnPrimClick мож. быть вариант, когда ты пытаешься обратиться к полю StringGrid1 ->Cells [0][0],
а в функции FormClose, ты сохраняешь начиная с 1 ячейки. (мож так и надо по логике).
3. Кроме того проверь есть ли у тебя 12-я ячейка в стринг-гриде...
P.S. так сложно сказать, если хош. могу дома посмотреть весь проект, если ты его конечно выложишь :))
Цитата: __AleXX__
Замечания:
1. переменные KorRow, KorCol все-таки я б инициализировал какими-то безобидными значениями.
2. в функции BtnPrimClick мож. быть вариант, когда ты пытаешься обратиться к полю StringGrid1 ->Cells [0][0],
а в функции FormClose, ты сохраняешь начиная с 1 ячейки. (мож так и надо по логике).
3. Кроме того проверь есть ли у тебя 12-я ячейка в стринг-гриде...
P.S. так сложно сказать, если хош. могу дома посмотреть весь проект, если ты его конечно выложишь :))
1.Попробую
2.не обращаюсь к StringGrid1 ->Cells [0][0], да и значения начинаются с 0 т.е. обращение к StringGrid1 ->Cells [0][0] не вызовит ошибки
3.имеются ячейки от [0][0] до [12][20]
проект выложу, только там уже есть добавления, и ещё осталось запихать в архив весом не более позволеного;)