powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Copy Paste текста с Tab в несколько TEdit
11 сообщений из 11, страница 1 из 1
Copy Paste текста с Tab в несколько TEdit
    #39744100
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день,

Есть текст, разделённый Tab (например - из Excel)
авторJohn <tab> Smith

На форме есть 2 контрола TEdit или аналог из DevExpress
Я хочу сделать так, что бы при попытке вставить текст в Edit1 вставлялся "John", а в Edit2 "Smith" автоматически.

Кто нибудь делал что нибудь подобное ?
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744138
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
07.12.2018 11:26, Valery_B пишет:
> Я хочу сделать так, что бы при попытке вставить текст в Edit1 вставлялся "John", а в Edit2 "Smith" автоматически.

автоматически не получится.

тут программист нужен (С)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744140
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B,

Возьми текст из буфера, пореж на строки по разделителю и вставляй, куда тебе там нужно.
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744159
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMaster,

Как бы я его не резал, когда в пользователь нажмёт CTRL+V вставиться то, что в буфере.
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744165
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
07.12.2018 12:12, Valery_B пишет:

> Как бы я его не резал, когда в пользователь нажмёт CTRL+V вставиться то, что в буфере.

именно поэтому, тут нужен программист.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744172
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийименно поэтому, тут нужен программист.

А ты программист ?
Можешь показать, что надо для этого написать ?
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744183
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valery_BМимопроходящийименно поэтому, тут нужен программист.

А ты программист ?
Можешь показать, что надо для этого написать ?

Код: pascal
1.
Clipboard.AsText:= '';
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744184
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
07.12.2018 12:20, Valery_B пишет:

МП>> именно поэтому, тут нужен программист.
> А ты программист ?

нет

> Можешь показать, что надо для этого написать ?

нет

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744197
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А лучше так...

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
procedure TzEdit.WndProc(var Message: TMessage);
begin
  if Message.Msg = WM_PASTE then
  begin
    // Режем , вставляем итд Clipboard.AsText
  end
  else
    inherited;
...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744240
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zinpub,

Наверное, надо включать эту механику при нажатом Shift и добавит интерфейс для контролов, что бы вставлялся не только в TEdit
А пока получилось так (Делфи7):
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
  TEdit=class(StdCtrls.TEdit)
  public
   function FindNextEdit(CurrentEdit:TEdit):TEdit;
   procedure PasteDelimetedText(List:TStringList);
   procedure PasteText;
   procedure WndProc(var Message: TMessage); override;
  end;

...

function TEdit.FindNextEdit(CurrentEdit: TEdit): TEdit;
var
 x:Integer;
begin
Result:=nil;
 If Assigned(CurrentEdit) and Assigned(CurrentEdit.Parent) then
  begin
   for x:=CurrentEdit.ComponentIndex to CurrentEdit.Parent.ComponentCount-1 do
     if (CurrentEdit.Parent.Components[x] is TEdit) and (CurrentEdit.Parent.Components[x]<>CurrentEdit) then
      begin
       Result:=CurrentEdit.Parent.Components[x] as TEdit;
       Exit;
      end;
  end;
end;

procedure TEdit.PasteDelimetedText(List: TStringList);
var
 X:Integer;
 AEdit:TEdit;
begin
if List.Count>0 then
 Text:=List[0];
 if List.Count>=2 then
  begin
   AEdit:=Self;
   for x:=1 to List.Count-1 do
    begin
     AEdit:=FindNextEdit(AEdit);
     if Assigned(AEdit) then
      AEdit.Text:=List[x];
    end;
  end;
end;

procedure TEdit.PasteText;
var
 List:TStringList;
begin
 List:=TStringList.Create;
 try
  List.Delimiter:=#8;
  List.DelimitedText:=ClipBoard.AsText;
  PasteDelimetedText(List);
 finally
  List.Free;
 end;

end;

procedure TEdit.WndProc(var Message: TMessage);
begin
if (Message.Msg = WM_PASTE) then
   PasteText
  else
    inherited;
end;

...
Рейтинг: 0 / 0
Copy Paste текста с Tab в несколько TEdit
    #39744266
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valery_B,

Можно и не плодить классы... а просто TEdit.WindowsProc:= ......
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Copy Paste текста с Tab в несколько TEdit
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]