Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 11.01.2016
Сообщений: 14

Как изменить выбранную строку в ListBox

14.01.2016, 11:03. Показов 3984. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день,есть ListBox и есть Edit, так же кнопки Добавить(координаты вершин, через запятую),Удалить и Изменить . У меня кнопка изменить выглядит так :
C++
1
2
3
4
{
if(ListBox1->ItemIndex<0) return;
ListBox1->Items->Strings[ListBox1->ItemIndex]=Edit1->Text;
}
Можно изменить любую строчку,но вопрос такой, возможно ли сделать так чтобы при выборе строки в ЛистБоксе -> появляется окно (типа Edit), чтобы изменить эту строчку? Или еще ,как поставить ограничения в Edit, на то,чтобы
пользователь не мог добавить одну координату.
(Edit можно вводить только цифры через запятую, поставил ограничения на вторую запятую, но можно добавить одну координату)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.01.2016, 11:03
Ответы с готовыми решениями:

Как удалить выбранную строчку из ListBox
Есть такой код, при нажатии на кнопку вылазит Listbox1 и показывает все файлы которые находяться на диске D нужно выбрать любой...

CheckListBox - как выделить цветом выбранную строку
Добрый день. Выводится текст в CheckListBox, и мне нужно выделить цветом одну строку, на которую я поставил галочку. Сделал только это,...

Как изменить цвета элементов в ListBox?
хотелось бы сделать что то похожее, как на картинке

13
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
14.01.2016, 11:39
Покажи пример, как у тебя должны быть записаны координаты?
0
0 / 0 / 0
Регистрация: 11.01.2016
Сообщений: 14
14.01.2016, 11:50  [ТС]
В Edit они записываются так : 135,456 -> добавить; 54,462 -> добавить и т.д (но можно записать и 5647 -> Добавить - что не правильно)
В ListBox они записываются построчно
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
14.01.2016, 12:25
Цитата Сообщение от Litrein Посмотреть сообщение
но можно записать и 5647 -> Добавить - что не правильно
C++
1
2
3
4
5
6
На кнопку Добавить
if(!Edit1->Text.Pos(","))
{
  ShowMessage("Установите разделитель координат");
  return;
}
0
0 / 0 / 0
Регистрация: 11.01.2016
Сообщений: 14
14.01.2016, 12:31  [ТС]
Спасибо

Добавлено через 3 минуты
Сообщение выводит,но все равно записывает в ListBox, и когда просто вписываешь координаты правильно он выдает сообщение
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
14.01.2016, 13:40
Цитата Сообщение от Litrein Посмотреть сообщение
Сообщение выводит,но все равно записывает в ListBox, и когда просто вписываешь координаты правильно он выдает сообщение
Выложи код куда ты этот кусок кода записываешь?
0
0 / 0 / 0
Регистрация: 11.01.2016
Сообщений: 14
14.01.2016, 14:06  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
void __fastcall TForm1::ButtonAddClick(TObject *Sender)
{
ListBox1->Items->Add(Edit1->Text);
Edit1->Clear();
 
if(!Edit1->Text.Pos(","))
{
  ShowMessage("Установите разделитель координат");
  return;
}
}
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
14.01.2016, 15:49
Бр-р-р! ЗанОсите любую информацию с эдита в бокс, потом его стираете, - а потом анализируете по предложенному варианту?!! Круто.
0
0 / 0 / 0
Регистрация: 11.01.2016
Сообщений: 14
14.01.2016, 16:20  [ТС]
И что? Он чистит то,что было в Edit. Бокс-то тут причем. Еще раз объясняю, что сообщение выводит, но и записывает неправильный вариант в ListBox, а мне это не нужно.
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
14.01.2016, 16:24
Цитата Сообщение от Litrein Посмотреть сообщение
Еще раз объясняю, что сообщение выводит
А я еще раз и объяснять не возьмусь. Вам хотят помочь, но вы в упор не видите очевидного... . Что тут можно советовать?!
0
0 / 0 / 0
Регистрация: 11.01.2016
Сообщений: 14
14.01.2016, 16:34  [ТС]
Для,Вас,мб и очевидные,а людям,которые только начинают изучение,пока не очень.

Добавлено через 5 минут
Или,Вы,из разряда тех людей,которые любят на светофорах сигналить машине,впереди, со знаком ! в треугольнике.
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
14.01.2016, 16:46
Вы понимаете, что строки вашего кода выполняются последовательно? Как тогда вы объясните такое их расположение...
Цитата Сообщение от Litrein Посмотреть сообщение
Edit1->Clear();
if(!Edit1->Text.Pos(","))
Если вы переставите в начало код, предложенный камрадом Sasha, то занесение в бокс будет фильтроваться этим кодом, т.е. как и хотелось.

Добавлено через 4 минуты
Вас, возможно, термин return озадачил (решили, что в конце должен быть), но он означает выход из функции при выполнении условия анализа, а если это условие не выполнилось, то обрабатываются следующие строки.
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
14.01.2016, 22:49
C++
1
2
3
4
5
6
7
8
9
10
11
void __fastcall TForm1::ButtonAddClick(TObject *Sender)
{
 
if(!Edit1->Text.Pos(","))
{
  ShowMessage("Установите разделитель координат");
  return;
}
ListBox1->Items->Add(Edit1->Text);
Edit1->Clear();
}
0
0 / 0 / 0
Регистрация: 11.01.2016
Сообщений: 14
15.01.2016, 11:46  [ТС]
nick42, Спасибо большое, да,Вы,правы, меня немного смутил return. Теперь осознал свою глупость.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.01.2016, 11:46
Помогаю со студенческими работами здесь

Как удалить пустую строку в ListBox?
Как удалить пустую строку в ListBox?

Как узнать последнюю строку из ListBox
Может вопрос покажется глупым но мне нужно придать переменой типа int значение из последней строки listbox. Заранее спасибо

Как извлечь строку из Listbox'a? Почему цикл не работает?
1) Как из листбокса выделить строку, и по нажатию кнопки чтобы извлеклась эта строка(в текстовый файл)? 2) Цикл работает неправильно: ...

Как подсчитать вхождение каждого из символов в строку ListBox
Подскажите пожалуйста, каким образом можно подсчитать количество каждого символа в строке ListBox! Например: Есть строка:...

Как можно записать строку из компонента ListBox в переменную?
Доброго времени суток! Подскажите пожалуйста, как можно записать строку из компонента ListBox в переменную, строки в ListBox заполнены...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в конфигурации КА2. Данные берутся из регистра сведений, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru