Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.02.25;
Скачать: [xml.tar.bz2];

Вниз

Drag n Drop в элементы TEdit   Найти похожие ветки 

 
Grim Rider   (2002-02-01 11:08) [0]

Подскажите плз, как организовывается drag n"drop в элементы TEdit? Т.е. пользователь хватает мышкой файл и тянет его в TEdit, а в нем появляется имя файла (путь к файлу и т.д.)

В продуктах мелкомягких это просто, в Delphi я что-то не пойму как....

Спасибо.


 
DenK_vrtz   (2002-02-01 11:36) [1]

1.Свойство DragMode в dmAutomatic
2.У компонента, в который перетаскиваются данные должено быть описано событие OnDragOvner, типа Accept:=Source is T...,
и событие OnGragDrop - возникает во время перетаскиваня при отпускании левой кнопки мыши над элементом готовым к приему, т.е.
в твоем случее Edit1.text:=...

Попробуй!!!


 
yaJohn   (2002-02-01 13:04) [2]

2 DenK_vrtz
Ne vse tak prosto.... Eto dlia taskania vnutri svoego prilojenia. A chelovek hochet poluchit" fail kotoriy user iz Explorera vkidivaet.
Luchsee (IMHO) chto videl -
TagDropFileTarget, TagDropTextTarget
eto iz Alex Ghost Copyright (c) 1999,2000 Alexey Popov

Esli nado - mogu namilit".



 
DenK_vrtz   (2002-02-01 13:16) [3]

2 yaJohn. Я не понял проблемы. Извини!
Кинь пример на мыло, pl. Спасибо!!!


 
Набережных С.   (2002-02-01 21:40) [4]

DragAcceptFiles регистрирует окно как получателя WM_DROPFILES.
WM_DROPFILES оповещает, что что-то сброшено
DragQueryFile - выборка имен из полученного списка
DragFinish - оповещает систему, что операция закончена и можно освободить память.


 
Grim Rider   (2002-02-09 06:00) [5]

2 Набережных С.:
а чуть поподробнее не расскажете как это все использовать?


 
Набережных С.   (2002-02-09 12:16) [6]


uses
Windows, Messages, SysUtils, Classes,
Graphics, Controls, Forms, Dialogs,
StdCtrls, ShellAPI;

type
TForm1 = class(TForm)
Edit1: TEdit;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
procedure AppMsg(var Msg:TMsg; var Handled: boolean);
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

{ TForm7 }

procedure TForm1.AppMsg(var Msg: TMsg; var Handled: boolean);
var
s:string;
begin
if (Msg.message = WM_DROPFILES)and(Msg.hwnd = Edit1.Handle) then
begin
SetLength(s,MAX_PATH);
Handled:=true;
DragQueryFile(Msg.wParam,0,PChar(s),MAX_PATH);
Edit1.Text:=PChar(s);
DragFinish(Msg.wParam);
Handled:=true;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
DragAcceptFiles(Edit1.Handle,true);
Application.OnMessage:=AppMsg;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
DragAcceptFiles(Edit1.Handle,false);
end;

end.



 
Grim Rider   (2002-02-09 12:19) [7]

Спасибо



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.02.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
1-79383
il2
2002-02-07 14:57
2002.02.25
MDIChildren


1-79396
Yaro
2002-02-09 14:35
2002.02.25
Запуск Ярлыка


14-79464
Polevi
2002-01-08 18:50
2002.02.25
Мерлину


14-79442
sudiv
2002-01-05 16:07
2002.02.25
Нужна схема к Smart UPS 600? Поможите если есть у кого?


1-79367
svv
2002-02-08 16:40
2002.02.25
Tedit переход по Enter к следующему Tedit





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский