1 (edited by pha1984 2015-05-26 06:22:48)

Topic: Скопировать часть текста из Memo1 и вставить в Edit1

Как взять часть текста из Edit1 или Memo1 и вставить в Edit2 или Memo2?
Например

NovayaForma.EdKod2.Text:= NovayaForma.MemoKod2.MaxLength(5)

Re: Скопировать часть текста из Memo1 и вставить в Edit1

NovayaForma.EdKod2.Text:=Copy ( NovayaForma.MemoKod2..Text,1,3); // с позиции 1 копировать 3 символа

Re: Скопировать часть текста из Memo1 и вставить в Edit1

спс, работает

Re: Скопировать часть текста из Memo1 и вставить в Edit1

Leonid wrote:

NovayaForma.EdKod2.Text:=Copy ( NovayaForma.MemoKod2..Text,1,3); // с позиции 1 копировать 3 символа

Подскажите как практически это реализовать. В скриптах не силен.
Когда этот код находится в Скрипте, валятся одни ошибки - то не задекларирована процедура,
то ожидается Begin, то End, то требует точку или точку с запятой...
Если в поле Calculated в таблице - тоже не работает...
Куда этот код вставить?

спс

Re: Скопировать часть текста из Memo1 и вставить в Edit1

Смотря что вам нужно ...
Пример :
Делаете у компонента событие . В скрипте у вас появляется заготовка процедуры

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
  begin

  end;
добавляете оператор скрипта между begin и end;   для компонента Edit1 и Memo1 , которые вы расположили
на форме Form1 :    Form1.Edit1.Text := Copy (Form1.Memo1.Text ,1,3);
получится вот так :
procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
  begin
     Form1.Edit1.Text := Copy (Form1.Memo1.Text ,1,3);
  end;

Re: Скопировать часть текста из Memo1 и вставить в Edit1

Вот пример из моего проекта:


procedure NovayaForma_EdKod1_OnExit (Sender: string; Action: string);
var
id: string;
begin
NovayaForma.EdKod1.CharCase := ecUpperCase;
if NovayaForma.MemoKod1.Text <> #39#39 + 'НЕ УКАЗАН' + #39#39 then
   begin
     if SQLExecute ('SELECT COUNT(podCode) FROM diagnoseThree WHERE podcode= '''+ NovayaForma.EdKod1.Text +'''')> 0 then
        begin
        id:= SQLExecute('SELECT diagnoseThree FROM diagnoseThree WHERE podCode IN (''' + NovayaForma.EdKod1.Text + ''')');
        NovayaForma.MemoKod1.Text := NovayaForma.EdKod1.Text + '  ' +id;
        end;
     if SQLExecute ('SELECT COUNT(Code) FROM diagnoseTwo WHERE code= '''+ NovayaForma.EdKod1.Text +'''')> 0 then
        begin
        frmVibratKod1.Caption:= 'Выбор диагноза направивщего учреждения';
        frmVibratKod1.ShowModal;
        end else
        begin
        NovayaForma.EdKod1.Text:= Copy(NovayaForma.MemoKod1.Text,1,5);
        end;
   end;
if NovayaForma.MemoKod1.Text = #39#39 + 'НЕ УКАЗАН' + #39#39 then
   begin
     if SQLExecute ('SELECT COUNT(podCode) FROM diagnoseThree WHERE podcode= '''+ NovayaForma.EdKod1.Text +'''')> 0 then
        begin
        id:= SQLExecute('SELECT diagnoseThree FROM diagnoseThree WHERE podCode IN (''' + NovayaForma.EdKod1.Text + ''')');
        NovayaForma.MemoKod1.Text := NovayaForma.EdKod1.Text + '  ' +id;
        end;
     if SQLExecute ('SELECT COUNT(Code) FROM diagnoseTwo WHERE code= '''+ NovayaForma.EdKod1.Text +'''')> 0 then
        begin
        frmVibratKod1.Caption:= 'Выбор диагноза направивщего учреждения';
        frmVibratKod1.ShowModal;
        end else
        begin
        NovayaForma.EdKod1.Clear;
        end;
   end;
end;

Re: Скопировать часть текста из Memo1 и вставить в Edit1

Leonid wrote:

Смотря что вам нужно ...

Леонид спасибо большое, все получилось...Оказывается двойной клик в Событиях автоматом вставляет Процедуру в Скрипт...
Дмитрию спасибо за этот Продукт. Для новичков самое то. (ИМХО)

Всем спасибо.