Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.03.2009, 19:45   #1
SeregaKo
Пользователь
 
Регистрация: 17.06.2008
Сообщений: 22
Радость Вопрос по ListBox

Компьютер рандомом загадывает 4-х значное число, пользователь вводит в Edit своё числою Вопрос: как вывести в ListBox совпавшие цифры (или число целиком) конкретно по позиции , а вместо несовпавших поставить знак * Или здесь лучше использовать другой компонент, не ListBox?

Например: компьютер загадал 1234 пользователь ввёл 5287, нужно чтобы в листбоксе вывелось *2**

Заранее спасибо.
SeregaKo вне форума Ответить с цитированием
Старый 07.03.2009, 19:52   #2
KORN
Банхаммер
Участник клуба
 
Аватар для KORN
 
Регистрация: 17.02.2007
Сообщений: 1,754
По умолчанию

в цикле перебираешь 1е число если pos(первый символ, во 2м числе)<>0 тогда выводишь и т.д.
Перед тем как спросить ищи на форуме и в GOOGLE
KORN вне форума Ответить с цитированием
Старый 07.03.2009, 20:36   #3
SeregaKo
Пользователь
 
Регистрация: 17.06.2008
Сообщений: 22
По умолчанию

Цитата:
Сообщение от KORN Посмотреть сообщение
в цикле перебираешь 1е число если pos(первый символ, во 2м числе)<>0 тогда выводишь и т.д.
Так?

for i:=1 to 4 do
begin
If user_number[0]=secret_number[0] then
RezListBox.Items.Insert(0, user_number[0]) else
RezListBox.Items.Insert(0, '*');
If user_number[1]=secret_number[1] then
RezListBox.Items.Insert(1, user_number[1]) else
RezListBox.Items.Insert(1, '*');
If user_number[2]=secret_number[2] then
RezListBox.Items.Insert(2, user_number[2]) else
RezListBox.Items.Insert(2, '*');
If user_number[3]=secret_number[3] then
RezListBox.Items.Insert(3, user_number[3]) else
RezListBox.Items.Insert(3, '*');
SeregaKo вне форума Ответить с цитированием
Старый 08.03.2009, 07:48   #4
KORN
Банхаммер
Участник клуба
 
Аватар для KORN
 
Регистрация: 17.02.2007
Сообщений: 1,754
По умолчанию

Код:
var
  i: integer;
  s: string;
begin
for i:=1 do length(number2) do
begin
s:=copy(number1, i, 1);
  if pos(s, number2)<>0 do
  listbox1.items.add(s);
end;
end;
Перед тем как спросить ищи на форуме и в GOOGLE
KORN вне форума Ответить с цитированием
Старый 08.03.2009, 11:55   #5
SeregaKo
Пользователь
 
Регистрация: 17.06.2008
Сообщений: 22
По умолчанию

А как сделать так, тобы в листбоксе число выводилось в одну строку:
например: 1234 ,
а то у меня он выводит так
1
2
3
4
SeregaKo вне форума Ответить с цитированием
Старый 08.03.2009, 13:31   #6
Jeni
Форумчанин
 
Регистрация: 31.05.2007
Сообщений: 486
По умолчанию

Просто "складывать" все символы в одну строку, а потом записывать эту строку в ListBox после цикла.
Jeni вне форума Ответить с цитированием
Старый 08.03.2009, 13:43   #7
KORN
Банхаммер
Участник клуба
 
Аватар для KORN
 
Регистрация: 17.02.2007
Сообщений: 1,754
По умолчанию

юзай не листбокс а едит и получится edit1.text:=edit1.text+s;
Перед тем как спросить ищи на форуме и в GOOGLE
KORN вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как добавить в listbox файлы(пишу с помощью bassplayer)(Listbox+opendialog=play) blackstersl Общие вопросы Delphi 11 09.06.2010 13:23
Вопрос по ListBox yura-cat Помощь студентам 7 15.10.2008 20:04
вопрос по сокетам и общение как в ICQ.Сложный вопрос... Руслантус Общие вопросы C/C++ 2 12.08.2008 21:10
Вопрос по ListBox Rahim1993 Общие вопросы Delphi 2 17.01.2008 20:04
ListBox, вопрос... CrazyJohn Помощь студентам 2 05.01.2008 14:12