Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Замена строчки в ЛистБоксе 
:(
    Опции темы
mr.Anderson
Дата 30.11.2005, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Подскажьте плиз как решить такую задачку: в ЛистБоксе есть несколько строчек (Item'ов). Надо один из них полностью заменить на другой. Как?


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
_hunter
Дата 30.11.2005, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



а в чем проблема? у него есть Items у которых есть Strings ( доступ по индексу ) и меняй их...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
mr.Anderson
Дата 1.12.2005, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Написал вот это:
Код

 if(Form7->CheckBox1->Checked==true)
 {
  Form1->ListBox3->Items->LoadFromFile("system.ini");

  FILE *file=fopen("system.ini","w+t");
  fclose(file);

  AnsiString formcolor;
  if(Form7->ComboBox1->Text=="Белый") formcolor="clWhite";
  if(Form7->ComboBox1->Text=="Голубой") formcolor="clSkyBlue";
  if(Form7->ComboBox1->Text=="Синий") formcolor="clBlue";
  if(Form7->ComboBox1->Text=="(По умолчанию)") formcolor="clNavy";
  if(Form7->ComboBox1->Text=="Красный") formcolor="clRed";
  if(Form7->ComboBox1->Text=="Зеленый") formcolor="clGreen";
  if(Form7->ComboBox1->Text=="Светло-зеленый") formcolor="clLime";
  if(Form7->ComboBox1->Text=="Малиновый") formcolor="clFuchsia";
  if(Form7->ComboBox1->Text=="Сиреневый") formcolor="clPurple";
  if(Form7->ComboBox1->Text=="Коричневый") formcolor="clMaroon";
  if(Form7->ComboBox1->Text=="Черный") formcolor="clBlack";

  Form1->ListBox3->Items->Strings[1]="MainFormColor="+formcolor;
  Form1->ListBox3->Items->SaveToFile("system.ini");
 }

Объясните, почему строчка, первое, не заменяется, а добавляется в начало списка. Второе, почему файл system.ini после этого становится пустым. Третье, почему програ после всех этих операций говорит, что "файл system.ini не может быть создан", хотя он в папке с прогрой есть, впрочем, пустой почему-то. Разъясните плиз ошибки!

Это сообщение отредактировал(а) sim7 - 1.12.2005, 18:06


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
_hunter
Дата 1.12.2005, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



в чем смысл этих:
FILE *file=fopen("system.ini","w+t");
fclose(file);
строк?

почему строчка не заменяется ( кстати, какая строчка? ) -- не знаю. что-то где-то накосячил

создан он не может быть потому, что он уже создан


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
Vyacheslav
Дата 1.12.2005, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2124
Регистрация: 25.3.2002
Где: Москва

Репутация: 47
Всего: 59



Это
Код

Form1->ListBox3->Items->Strings[1]="MainFormColor="+formcolor;

не первая, а вторая строка
Первая - это
Код

Form1->ListBox3->Items->Strings[0]="MainFormColor="+formcolor;



--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
mr.Anderson
Дата 4.12.2005, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Цитата
в чем смысл этих:
FILE *file=fopen("system.ini","w+t");
fclose(file);
строк?

Надо стереть файл. Что я и делаю... Правда, может, надо "w" режим задать... А какая в данном случае разница, впрочем...
Цитата
что-то где-то накосячил

А поконкретней? smile
Цитата
не первая, а вторая строка

Я знаю. Но это не суть важно в моем вопросе.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
_hunter
Дата 5.12.2005, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



никогда не слышал о таком способе стирания... ну да ладно...

а поконкретнее... отладчик в руки и идем по коду...
+ убери из тестового проекта всю избыточную информацию ( типа if(Form7->ComboBox1->Text=="Белый") formcolor="clWhite"; )
в результате получим:
Код

 {    
  Form1->ListBox3->Items->LoadFromFile("system.ini");    

  FILE *file=fopen("system.ini","w+t");    
  fclose(file);    

  Form1->ListBox3->Items->Strings[1]="MainFormColor=";    

  Form1->ListBox3->Items->SaveToFile("system.ini");    
 }

что происходит теперь?


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0526 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.