String *str = new String(Edit1->Text);
ptrToStr->Add(str);
Получение адреса элемента..
EditList = new TList();
Edit1->Text = "текст текст текс текс";
EditList->Add((void * )&(Edit1->Text));
ShowMessage(*(AnsiString * )(EditList->Items[0]));
Таблица появялется а текст не отображается:(((
Цитата:
Originally posted by 3D Bob
Вот код
EditList = new TList();
Edit1->Text = "текст текст текс текс";
EditList->Add((void * )&(Edit1->Text));
ShowMessage(*(AnsiString * )(EditList->Items[0]));
Таблица появялется а текст не отображается:(((
Вот код
EditList = new TList();
Edit1->Text = "текст текст текс текс";
EditList->Add((void * )&(Edit1->Text));
ShowMessage(*(AnsiString * )(EditList->Items[0]));
Таблица появялется а текст не отображается:(((
Может для начала заменить TList на TStringList, а маленько через жопу получается?
Цитата:
Originally posted by GIZMO
Может для начала заменить TList на TStringList, а маленько через жопу получается?
Может для начала заменить TList на TStringList, а маленько через жопу получается?
Мне нужен массив указателей Тектовых полей Каждого Еэдита, чтобы потом можно было циклом поместить их все в базу данных.
Цитата:
Originally posted by 3D Bob
Вот код
EditList = new TList();
Edit1->Text = "текст текст текс текс";
EditList->Add((void * )&(Edit1->Text));
ShowMessage(*(AnsiString * )(EditList->Items[0]));
Таблица появялется а текст не отображается:(((
Вот код
EditList = new TList();
Edit1->Text = "текст текст текс текс";
EditList->Add((void * )&(Edit1->Text));
ShowMessage(*(AnsiString * )(EditList->Items[0]));
Таблица появялется а текст не отображается:(((
Значицца так, добавлять:
Код:
при удалении List'а делать:
Код:
int Count = ptrToStr->Count;
while(Count--)delete ptrToStr->Items[Count];
delete ptrToStr;
while(Count--)delete ptrToStr->Items[Count];
delete ptrToStr;
с тебя пиво
Цитата:
Originally posted by honeybeer
Значицца так, добавлять:
при удалении List'а делать:
с тебя пиво
Значицца так, добавлять:
Код:
String *str = new String(Edit1->Text);
ptrToStr->Add(str);
ptrToStr->Add(str);
при удалении List'а делать:
Код:
int Count = ptrToStr->Count;
while(Count--)delete ptrToStr->Items[Count];
delete ptrToStr;
while(Count--)delete ptrToStr->Items[Count];
delete ptrToStr;
с тебя пиво
Нету с меня пиво, в твоем примере создается копия строки, мне не нужен адрес копии строки, я мог с таким же успехом сделать так...
AnsiString text = Edit1->Text;
List->Add(&text);
Но ведь в Эдите данные могут меняться.... Мне нужно просто знать адрес по которому эти данные написаны...
Цитата:
Originally posted by 3D Bob
Вот код
EditList->Add((void * )&(Edit1->Text));
Вот код
EditList->Add((void * )&(Edit1->Text));
меня здесь смущает void
Насколько я понял, у тебя каждому Edit'у соответствует узел TList->Items, т.е. количество Edit'ов = TList->Count. Если это так, то какой смысл хранить указатели в списке, в то же время имея возможность получить адрес непосредственно.