Главная Главная страница форума Регистрация Вход
Новые сообщения Участники форума Правила форума Поиск
Страница 1 из 11
Модератор форума: Ekz 
Форум » Все о Delphi » Синтаксис » String и Cardinal
String и Cardinal
skycarДата: Пятница, 17.10.2008, 19:50 | Сообщение # 1
Ранг 6
Группа: Проверенные
Сообщений: 116
Награды: 5
Репутация: 31
Статус: Offline
Помогите, пожалуйста, как преобразовать данные из Edit из певого типа во второй)
 
AdminДата: Пятница, 17.10.2008, 21:31 | Сообщение # 2
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Как обычно из строкового в целочисленный:
Code
var x:cardinal;
...
x := StrToInt(Edit1.text); // преобразовываем
ShowMessage(IntToStr(x)); // проверяем


Не оказываю помощь через личные сообщения и ICQ
 
boreunДата: Среда, 10.02.2010, 02:57 | Сообщение # 3
Ранг 1
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 3
Статус: Offline
Нужно скопировать в Мемо2 строку, которая находится после строки с искомым.

Code
procedure TForm1.Button1Click(Sender: TObject);
var // Объявляем переменные
Find:string; // Искомая строка
i:integer; // Счетчик для цикла

begin

find:=Edit1.Text; // Записываем в find текст из Edit
For i:=0 to Memo1.Lines.Count-1 do // Запускаем цикл поиска строки
If Pos(find, Memo1.Lines.Strings[i])<>0
Then
Begin
Memo1.SetFocus();
Memo1.SelStart:=Pos(FIND,Memo1.Lines.text)-1;
Memo1.SelLength:=Length(FIND);
Memo2.Text:=вся следующая строка, за строкой в которой находится memo1.SelText ;
End;
end;

Помогите пожалуйста найти решение.

Сообщение отредактировал boreun - Среда, 10.02.2010, 03:03
 
AdminДата: Среда, 10.02.2010, 10:29 | Сообщение # 4
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
А почему вы не создали новую тему? Это же совсем другое!

А в Memo чего только строка? Без переносов? Тогда попробуй так.
И вообще лучше бы скопировали нужный (с которым будем работать) кусок из memo в переменную, и работали бы уже с ней, всеже удобнее.
Ну а остаток скопировать нужно просто вычислить. Есть вся строка размером L. Если L1 это длина искомой строки. И P1 это начало искомой строки, определяемое функцией Pos, то копировать нужно (функция Copy(откуда, с какой позиции, сколько символов)), с позиции (P1+L1) - (L-(P1+L1)). Вроде так.


Не оказываю помощь через личные сообщения и ICQ
 
boreunДата: Среда, 10.02.2010, 23:10 | Сообщение # 5
Ранг 1
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 3
Статус: Offline
Искомое "Привет" но, вобще искомое изначально неизвестно. Вся строка "Привет, а дела нормально". Требуется скопировать в мемо2 следующую строчку.
В данном случае это будет "(Молчи.)".
Прикрепления: 4117425.png(16Kb)


Сообщение отредактировал boreun - Среда, 10.02.2010, 23:10
 
AdminДата: Четверг, 11.02.2010, 16:43 | Сообщение # 6
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Получается нужно следущую строку скопировать? Ну тогда смотри Memo1.Lines[i+1] где i это строка в которой найдено "Привет"

Не оказываю помощь через личные сообщения и ICQ
 
boreunДата: Четверг, 11.02.2010, 20:55 | Сообщение # 7
Ранг 1
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 3
Статус: Offline
Quote (Admin)
Получается нужно следущую строку скопировать? Ну тогда смотри Memo1.Lines[i+1] где i это строка в которой найдено "Привет"

Всё получилось. Спасибо!!!
 
Форум » Все о Delphi » Синтаксис » String и Cardinal
Страница 1 из 11
Поиск:

Copyright DelphiDevelop.ru © 2008-2018
Хостинг от uCoz