Тема: Чому зникає попередній текст?

Не можу зрозуміти чому зникає попередній текст, і лишається тільки останній рядок тексту.



procedure TForm1.BitBtn1Click(Sender: TObject); // Процедура нажаття на кнопку обчислити
var a, b, c : integer;
begin
  a := RichEdit1.Lines.Count;                                      //Підраховуємо скільки рядків в RichEdit1
  RichEdit1.Lines.Text := Memo1.Lines.Text;                  //Текст з поля Memo1 присвоюється полю RichEdit1
  RichEdit1.Lines.Text := RichEdit1.Lines.Text + 'Знайти'; //Виводиться текст умови задачі + слово Знайти
  RichEdit1.Lines.Text := ComboBox1.Text;                   //Виводиться текст з компонента ComboBox1 Перше 
  RichEdit1.Lines.Text := ComboBox2.Text;                  //Виводиться текст з компонента ComboBox2 Друге 
  RichEdit1.Lines.Text := ComboBox3.Text;                  //Виводиться текст з компонента ComboBox3 Третє значення 
  RichEdit1.Lines.Text := ComboBox4.Text;                  //Виводиться текст з компонента ComboBox4 Четверте 
end;

Я щось не дописав???

2

Re: Чому зникає попередній текст?

Давайте спробуємо на простих змінних

var x:integer;
begin
    x:=1;     //x=1
    x:=x+1;   //x=1+1=2
    x:=10;    //куди зникло попереднє значення?
    x:=20;    //куди зникло попереднє значення?
    x:=30;    //чомусь лишається тільки останнє значення
end;
Подякували: ProgramBandera1

3

Re: Чому зникає попередній текст?

koala написав:

Давайте спробуємо на простих змінних

var x:integer;
begin
    x:=1;     //x=1
    x:=x+1;   //x=1+1=2
    x:=10;    //куди зникло попереднє значення?
    x:=20;    //куди зникло попереднє значення?
    x:=30;    //чомусь лишається тільки останнє значення
end;

Суворий ви вчитель. Мені знов до ранку сиди в ютубі. Напрям підказки ви даєте правильний за це вам велике дякую. Але шукати відповідь на підказку дуже довго.

4

Re: Чому зникає попередній текст?

Щоб замінити текст, треба робити x:=y. Щоб додати - x:=x+y. Що ви до ранку збираєтеся шукати? Ну хіба що символ нового рядку #13#10.
Так, а ще можна робити

RichEdit1.Lines.Add(рядок_для_додавання);
Подякували: leofun01, ProgramBandera, Chemist-i3

5

Re: Чому зникає попередній текст?

У TRichEdit є властивості SelText, SelStart, SelLength, SelAttributes. Вони дозволяють виділити якусь частину тексту, і потім щось з нею зробити, наприклад замінити іншою:

RichEdit1.SelStart := 5;
RichEdit1.SelLength := 7;
RichEdit1.SelAttributes.Color := clRed;
RichEdit1.SelText := 'Hi!';
Подякували: leofun011