Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.07.2010, 14:05   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
Вопрос Отображение файлов по расширениям в ShellListView

Не знал как правильно назвать тему. Суть в следующем. Есть код:
Код:
procedure TForm1.ShellListView2AddFolder(Sender: TObject;
  AFolder: TShellFolder; var CanAdd: Boolean);
begin
 CanAdd:=AFolder.IsFolder  or (ExtractFileExt(AFolder.PathName) = '.pdf');
end;
Данный код отображает только файлы pdf. Вопрос в следующем: как поместить данный код в кнопку? Я в дальнейшем хочу указывать расширение из ComboBox-a. Например так:
Код:
procedure TForm1.ShellListView2AddFolder(Sender: TObject;
  AFolder: TShellFolder; var CanAdd: Boolean);
begin
 CanAdd:=AFolder.IsFolder  or (ExtractFileExt(AFolder.PathName) = Form1.ComboBox1.Text);
end;
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 12.07.2010, 14:30   #2
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject;
  AFolder: TShellFolder; var CanAdd: Boolean);
begin
 CanAdd:=AFolder.IsFolder  or (ExtractFileExt(AFolder.PathName) = Form1.ComboBox1.Text);
end;
Так не подойдет?
И в заголовке исправьте кол-во параметров:
Код:
type
  TForm1 = class(TForm)
    ...
    Button1: TButton;
    procedure Button1Click(Sender: TObject; AFolder: TShellFolder; var CanAdd: Boolean);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 12.07.2010, 14:39   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
artemavd
Код:
procedure TForm1.ShellListView1AddFolder(Sender: TObject;
  AFolder: TShellFolder; var CanAdd: Boolean);
begin
 CanAdd:=AFolder.IsFolder  or (ExtractFileExt(AFolder.PathName) = Edit1.Text);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 ShellListView1.Refresh;
end;
Увидел идею?

Цитата:
Alex Cones
Что это за ерунда? Неужто работает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.07.2010, 15:10   #4
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Цитата:
Неужто работает?
Неа, у меня не работает

Цитата:
Увидел идею?
Да, только после закрытия программы вылетает AccessViolation почему-т..
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.

Последний раз редактировалось artemavd; 12.07.2010 в 15:27.
artemavd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ShellListView - отображение файлов sashahttp Win Api 1 20.11.2011 06:44
Открытие и отображение файлов coNsept Общие вопросы C/C++ 4 13.04.2010 00:43
Показать расширение файлов в ShellListView artemavd Общие вопросы Delphi 8 12.01.2010 12:06
Отображение скрытых файлов и папок и отображение розширения всех файлов beegl Общие вопросы Delphi 10 14.12.2008 22:02
Запуск файлов в ShellListView двойным щелчком Македонский Компоненты Delphi 2 31.08.2007 11:54