ADMin Портал!

Профиль



Добро пожаловать,
Гость

54.158.253.134

Регистрация или вход
Потеряли пароль?

Сейчас онлайн
Администраторы:0
Пользователей:0
Гостей:54
Поисковые боты:1

Всего:55

Кнопки




Исходный код

Статьи

TListBox

Отображает список строк и позволяет пользователю выбрать из него необходимые строки. Использует модуль StdCtrls
Перетащить файлы на TListBox
Перетащить мышкой файлы из проводника на TListBox
Код
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
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    //получение сообщений о переносе файла в окно приложения
    procedure WMDropFiles(var Msg: TWMDropFiles); message WM_DROPFILES;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
//регистрируем, что окно ListBox1 будет принимать файлы
  DragAcceptFiles(Form1.ListBox1.Handle, True);
end;

//процедура извлечения имен файлов при перетаскивании
procedure TForm1.WMDropFiles(var Msg: TWMDropFiles);
var
  i: integer;//счетчик файлов
  CountFile: integer;//Количество файлов
  size: integer;//длина строки, содержащей путь к файлу
  Filename: PChar; //указатель на имя файла
begin
try
  //Функция DragQueryFile извлекает имена перемещенных мышью файлов
  //получаем количество перемещаемых файлов
  CountFile := DragQueryFile(Msg.Drop, $FFFFFFFF, Filename, 255);
  //извлекаем пути до перемещаемых файлов и добавляем их в ListBox
  for i := 0 to (CountFile - 1) do
  begin
    //получаем длину строки, содержащей путь к файлу
    size := DragQueryFile(Msg.Drop, i , nil, 0)+1;
    //выделяем память под строку с именем файла
    Filename:= StrAlloc(size);
    //получаем непосредственно само имя файла и путь
    DragQueryFile(Msg.Drop,i , Filename, size);
    //добавляем его в ListBox  если расширение файла = '.mp3'
    //функция lowercase понижает регистр символов
    if lowercase(ExtractFileExt(StrPas(filename)))='.mp3' then
    listbox1.items.add(StrPas(Filename));
    //освобождаем строку
    StrDispose(Filename);
  end;
finally
  DragFinish(Msg.Drop); // отпустить файл
end;
end;

end.

Дата публикации: 18.09.2014
Прочитано: 4252 раз
Нет комментариев. Почему бы Вам не оставить свой?
Ваше имя:
Комментарий:
Секретный код:Секретный код
Повторить:
Антиспам:

Партнеры


Коменты


Komatoz
хз. но сегодня понадобился
Va-Bank
В общем с современными ОС этот DAEMON Tools уже не требуется..
Va-Bank
Конечно. Ставишь себе Lazarus на Ubuntu и ваяешь программы, ..
Komatoz
Интересно под ubuntu есть такой компилятор?
Va-Bank
Ну здрасьте. Фрипаскаль используется в проекте Lazarus. И я ..
Va-Bank
Выпустил новую версию утилиты. Понадобилась одному моему тов..
ShohinKarimov
Огромное спасибо за статью ;D
kukus
Разобрались. В default-ssl.conf был прописан путь до /var/ww..
kukus
Не работает по https - not found везде, в веб-морде, в win-к..
Komatoz
filename в header необходимо дополнительно обернуть заслешен..
Komatoz
при создании пользователя через phpmyadmin нужно указать (по..
Komatoz
что - то не так пошло с настройкой www сервера - 404ой ошибк..
Дмитрий
После строчки "скопируйте ссылку phpmyadmin из var/www/..
Сергей
Здесь актуальный производственный календарь на текущий год
Komatoz
попробуйте найти разработчика - вполне может быть что за 9 л..


Powered by SLAED CMS © 2005-2007 SLAED. All rights reserved.