Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
Татьяна 6
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 12
#1

Вывод количество слов в Memo в Edit - Delphi

16.01.2014, 17:11. Просмотров 1484. Ответов 12
Метки нет (Все метки)

Помогите пожалуйста: В memo написано несколько слов, нужно чтоб в edit было написано количество этих слов
Написать на Delphi 7
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2014, 17:11
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Вывод количество слов в Memo в Edit (Delphi):

Ввод в edit и вывод в memo
Есть массив целых чисел. На форме два компонента Edit и два Memo. Подскажите...

Вывод в Memo в зависимости от содержимого Edit-а
Доброго дня ув. форумчане. Дело такое... Есть компонент мемо 1,в нем забита...

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

Поиск текста из Edit в переменной и вывод найденного в Memo
Всем привет. Прошу помощи так как сам разобратся не могу уже целый день....

Количество слов в тексте Edit
Как можно узнать сколько слов пользователь ввёл в Edit?

Как посчитать количество слов в Delphi из Memo?
Как посчитать количество слов в Delphi из Memo? Если использовать не только...

12
ILue
9 / 9 / 3
Регистрация: 17.01.2013
Сообщений: 79
16.01.2014, 18:19 #2
Попробуй так
Delphi
1
2
3
4
5
6
7
8
9
procedure TForm1.Button2Click(Sender: TObject);
var
  L : TStringList;
begin
  L := TStringList.Create;
  ExtractStrings([' '], [], PChar(Memo1.Text), L);
  Edit2.Text := IntToStr(L.Count);
  L.Free;
end;
2
droider
Universal
Эксперт Pascal/Delphi
4383 / 2431 / 762
Регистрация: 04.10.2012
Сообщений: 8,847
16.01.2014, 21:38 #3
Так гораздо проще
Delphi
1
Edit1.Text :=IntToStr(Memo1.Lines.Count);
Ах, да! Там кол-во слов, а не строк.
1
Татьяна 6
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 12
17.01.2014, 10:22  [ТС] #4
Он все равно мне количество строк считает
0
Aladriel
25 / 18 / 2
Регистрация: 12.12.2011
Сообщений: 76
17.01.2014, 10:53 #5
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm1.btn1Click(Sender: TObject);
var
 i,j, result: integer;
 all_text:string;
 
begin
result := 0;
for j:=0 to memo1.Lines.Count-1
do begin
all_text:=memo1.lines[j];
all_text:=trim(all_text);
  for i := 0 to length(all_text)-1 do
    if all_text[i] = ' ' then
      inc(result);
end ;
edit1.text:=intToStr(result);
end;
Будут вопросы - задавайте, поясню.
1
Татьяна 6
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 12
17.01.2014, 13:23  [ТС] #6
У меня не считает последнее слово в memo и еще что за inc??? Помоги пожалуйста))
0
Aladriel
25 / 18 / 2
Регистрация: 12.12.2011
Сообщений: 76
17.01.2014, 13:26 #7
inc - увеличивает значение на 1. аналогично result:=result+1;
если во всех примерах получается на одно слово меньше, чем написали тогда edit1.text:=intToStr(result+1);
1
Татьяна 6
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 12
17.01.2014, 13:51  [ТС] #8
Спасибо тебе большое)))***

Добавлено через 16 минут
Еще одна проблемка когда нажимаешь enter он переходит на другую строку и считает опять на одно слово меньше чем написано((( как это исправить??? Помоги))))
0
Aladriel
25 / 18 / 2
Регистрация: 12.12.2011
Сообщений: 76
17.01.2014, 13:53 #9
покажи свой код
1
Татьяна 6
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 12
17.01.2014, 13:54  [ТС] #10
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm1.btn1Click(Sender: TObject);
var
 i,j, result: integer;
 all_text:string;
 
begin
result := 0;
for j:=0 to memo1.Lines.Count-1
do begin
all_text:=memo1.lines[j];
all_text:=trim(all_text);
  for i := 0 to length(all_text)-1 do
    if all_text[i] = ' ' then
      inc(result);
end ;
edit1.text:=intToStr(result+1);
end;
0
Aladriel
25 / 18 / 2
Регистрация: 12.12.2011
Сообщений: 76
17.01.2014, 14:11 #11
и те данные который ты вводишь в мемо

Добавлено через 14 минут
Delphi
1
2
3
4
5
6
result := 0;
  for i := 0 to Length (Memo1.Text-1) do
    begin
      if (Memo1.text[i]<>' ') and ((Memo1.text[i+1]=' ') or (Memo1.text[i+1]=#13)) then
       inc(result);
    end;
Попробуй так. код не проверяла. могут быть ошибки
0
Sasha_mk3
0 / 0 / 0
Регистрация: 03.05.2014
Сообщений: 1
06.05.2014, 17:04 #12
помогите пожалуйста , я первый раз тут и не знаю как и куда написать , но дело не в этом , нужна помощь .
как мне ввести страну в edit (их 250) нажать на Button и мне выводила информация именно о этой стране в Memo ?
куда занести информацию , и как сделать так что бы всё работало? я вообще не знаю как и что сделать .
или вообще как это лучше сделать , мне дали задание , короче сделать такое приложение , чтобы любой человек мог написать любую страну , и ему выводила информацию о ней , как лучше это сделать? заранее спасибо , и ответьте в лс )))

Добавлено через 40 секунд
Aladriel, помогите пожалуйста , я первый раз тут и не знаю как и куда написать , но дело не в этом , нужна помощь .
как мне ввести страну в edit (их 250) нажать на Button и мне выводила информация именно о этой стране в Memo ?
куда занести информацию , и как сделать так что бы всё работало? я вообще не знаю как и что сделать .
или вообще как это лучше сделать , мне дали задание , короче сделать такое приложение , чтобы любой человек мог написать любую страну , и ему выводила информацию о ней , как лучше это сделать? заранее спасибо , и ответьте в лс )))
0
Aladriel
25 / 18 / 2
Регистрация: 12.12.2011
Сообщений: 76
06.05.2014, 18:07 #13
Sasha_mk3, твоя проблема в самом оптимальным способом будет решаться через запросы к базе данных, например через ADO. в БД 2 поля - "Страна" и "Описание", запросами выбирай нужную информацию и отображай данные в memo.
0
06.05.2014, 18:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2014, 18:07
Привет! Вот еще темы с решениями:

Вывести строку Memo, содержащую наибольшее количество различных слов
Нужна программа которая выводит строку содержащую наибольшее количество...

Edit Label (линейный) Panel, Edit Label (строки), Memo (одномер-ный),ComboBox ListBox , RadioButton (RadioGroup) CheckBox ,StringGrid (ввод пароля)
1)Edit Label (линейный) Panel Проверить истинность высказывания: &quot;Цифры...

Вычислить количество слов (в Memo), начинающихся на "м"
Дан текст в компоненте Memo1. Вычислить количество слов начинающих на «м»....

Memo и edit
Надо сравнить текст edit и построчно memo.... Если в memo нет строки с текстом...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru