48
Is there a way to change the header names

with ExShellView1 do
begin
	ColumnNames := 'Name(Ime),Date modified(Datum),Item type(Tip),Size(Velikost)';
end
47
Disable or prevent the header's context-menu
with ExShellView1 do
begin
	AllowContextMenu := EXSHELLVIEWLib_TLB.exAllowListViewContextMenu;
end
46
Disable or prevent the list-view's context-menu
with ExShellView1 do
begin
	AllowContextMenu := EXSHELLVIEWLib_TLB.exAllowHeaderContextMenu;
end
45
Disable or prevent the control's context-menu
with ExShellView1 do
begin
	AllowContextMenu := EXSHELLVIEWLib_TLB.exDisableContextMenu;
end
44
How can I add my own items, without the default context menu

// InvokeMenuCommand event - Fired when the user selects an item context menu that has been added during QueryContextMenu event.
procedure TForm1.ExShellView1InvokeMenuCommand(ASender: TObject; Command : WideString);
begin
	with ExShellView1 do
	begin
		OutputDebugString( Command );
	end
end;

// QueryContextMenu event - Fired when the context menu is about to be active. You can supply new items to the context menu.
procedure TForm1.ExShellView1QueryContextMenu(ASender: TObject; var Items : WideString;var Separator : WideString);
begin
	with ExShellView1 do
	begin
		Separator := ',';
		Items := 'My First Item,My Second Item';
	end
end;

with ExShellView1 do
begin
	DefaultMenuItems := False;
	BrowseFolder := 'c:\Temp';
end
43
How can I add my own items

// InvokeMenuCommand event - Fired when the user selects an item context menu that has been added during QueryContextMenu event.
procedure TForm1.ExShellView1InvokeMenuCommand(ASender: TObject; Command : WideString);
begin
	with ExShellView1 do
	begin
		OutputDebugString( Command );
	end
end;

// QueryContextMenu event - Fired when the context menu is about to be active. You can supply new items to the context menu.
procedure TForm1.ExShellView1QueryContextMenu(ASender: TObject; var Items : WideString;var Separator : WideString);
begin
	with ExShellView1 do
	begin
		Separator := ',';
		Items := ',My First Item,My Second Item';
	end
end;

with ExShellView1 do
begin
	BrowseFolder := 'c:\Temp';
end
42
The InvokeCommand("open") will not work on a german. What can I do
// DblClick event - Occurs when the user dblclk the left mouse button over an object.
procedure TForm1.ExShellView1DblClick(ASender: TObject; );
begin
	// Objects(0).InvokeCommand("Open")
	with ExShellView1 do
	begin
		Objects.Get(EXSHELLVIEWLib_TLB.SelectedItems);
	end
end;

// InvokeItemMenu event - Notifies the application once the user selects a command in the context menu.
procedure TForm1.ExShellView1InvokeItemMenu(ASender: TObject; Command : Integer);
begin
	with ExShellView1 do
	begin
		OutputDebugString( Command );
	end
end;

with ExShellView1 do
begin
	BrowseFolder := 'c:\Temp';
end
41
How can I open the file's properties when user double clicks it
// DblClick event - Occurs when the user dblclk the left mouse button over an object.
procedure TForm1.ExShellView1DblClick(ASender: TObject; );
begin
	// Objects(0).InvokeCommand("Properties")
	with ExShellView1 do
	begin
		Objects.Get(EXSHELLVIEWLib_TLB.SelectedItems);
	end
end;

with ExShellView1 do
begin
	BrowseFolder := 'c:\Temp';
end
40
We're looking for a control to show files, just like the eXShellView, but than we would like to specify the files themselves. Is that possible using your control

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.LargeIcons;
	HeaderVisible := False;
	BrowseFiles := 'C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe|C:\Program Files\Microsoft Visual FoxPro 9\vfp9.exe';
end
39
How do I prevent pressing the Backspace, or go up to the parent

// KeyDown event - Occurs when the user presses a key while an object has the focus.
procedure TForm1.ExShellView1KeyDown(ASender: TObject; var KeyCode : Smallint;Shift : Smallint);
begin
	with ExShellView1 do
	begin
		OutputDebugString( 'Set the KeyCode = 0, if the KeyCode is 8 ' );
		KeyCode := 0;
	end
end;

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.Details;
	BrowseFolder := 'c:\Temp';
	Refresh();
end
38
How can I show grid lines around items

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.Details;
	DrawGridLines := True;
	Refresh();
end
37
How can I prevent shwoing the overlay icons (shortcut icons have a small arrow in lower-left corner, shared folders have a hand that shows that folder is shared, etc. )

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.LargeIcons;
	OverlayIcons := False;
	Refresh();
end
36
I need to provide my own context menu but I am not able to find RClick event. What can be done

// QueryContextMenu event - Fired when the context menu is about to be active. You can supply new items to the context menu.
procedure TForm1.ExShellView1QueryContextMenu(ASender: TObject; var Items : WideString;var Separator : WideString);
begin
	with ExShellView1 do
	begin
		OutputDebugString( 'Show here your popup/context menu' );
	end
end;

with ExShellView1 do
begin
	DefaultMenuItems := False;
end
35
How can I provide my own context menu (RClick event is missing)

// InvokeMenuCommand event - Fired when the user selects an item context menu that has been added during QueryContextMenu event.
procedure TForm1.ExShellView1InvokeMenuCommand(ASender: TObject; Command : WideString);
begin
	with ExShellView1 do
	begin
		OutputDebugString( Command );
	end
end;

// QueryContextMenu event - Fired when the context menu is about to be active. You can supply new items to the context menu.
procedure TForm1.ExShellView1QueryContextMenu(ASender: TObject; var Items : WideString;var Separator : WideString);
begin
	with ExShellView1 do
	begin
		Separator := ',';
		Items := 'First,Second,Third';
	end
end;

with ExShellView1 do
begin
	DefaultMenuItems := False;
end
34
Is it possible to specify the "Extra Large Icons" view

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.Extra_Large_Icons;
end
33
Is it possible to specify the "Large Icons" view

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.Large_Icons;
end
32
Is it possible to specify the "Medium Icons" view

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.Medium_Icons;
end
31
How can I hide the file names

with ExShellView1 do
begin
	HideFileNames := True;
	ViewMode := EXSHELLVIEWLib_TLB.Thumbnail;
end
30
Is it possible to set the Auto Arrange and Align To Grid flags by code

with ExShellView1 do
begin
	AutoArrange := True;
	AlignToGrid := True;
	ViewMode := EXSHELLVIEWLib_TLB.Thumbnail;
end
29
Is it possible to set the Auto Arrange flag by code

with ExShellView1 do
begin
	AutoArrange := True;
	ViewMode := EXSHELLVIEWLib_TLB.Thumbnail;
end
28
How do I specify the current folder

with ExShellView1 do
begin
	CurrentFolder := 'c:\windows';
end
27
Is it possible to disable showing tooltips for files and folders

with ExShellView1 do
begin
	HideToolTips := True;
end
26
Is it possible to hide the control's header

with ExShellView1 do
begin
	HeaderVisible := False;
end
25
How can I get the name of file being double clicked

// ObjectSelect event - Fired when the user selects a new object for browsing.
procedure TForm1.ExShellView1ObjectSelect(ASender: TObject; Object : IExShellObject);
begin
	with ExShellView1 do
	begin
		CancelObjectSelect();
		OutputDebugString( Object );
	end
end;


24
How can I prevent opening or selecting a folder or zip files when user double click it
// ObjectSelect event - Fired when the user selects a new object for browsing.
procedure TForm1.ExShellView1ObjectSelect(ASender: TObject; Object : IExShellObject);
begin
	with ExShellView1 do
	begin
		CancelObjectSelect();
	end
end;


23
Is it possible to list only files, no folders

with ExShellView1 do
begin
	ModifyFolderFlags(EXSHELLVIEWLib_TLB.NoSubFolders,EXSHELLVIEWLib_TLB.NoFlag);
end
22
How can I enable multiple selection

with ExShellView1 do
begin
	ModifyFolderFlags(EXSHELLVIEWLib_TLB.NoFlag,EXSHELLVIEWLib_TLB.SingleSel);
	Refresh();
end
21
How can I select a file or a folder

with ExShellView1 do
begin
	Objects.Get(EXSHELLVIEWLib_TLB.AllItems);
	Objects.Item[OleVariant(0)].SelectItem(EXSHELLVIEWLib_TLB.Select);
end
20
How can I get all files and folders as they are listed
with ExShellView1 do
begin
	Objects.Get(Integer(EXSHELLVIEWLib_TLB.AsDisplayed) Or Integer(EXSHELLVIEWLib_TLB.AllItems));
	OutputDebugString( Objects.Count );
end
19
How can I get all files and folders being displayed
with ExShellView1 do
begin
	Objects.Get(EXSHELLVIEWLib_TLB.AllItems);
	OutputDebugString( Objects.Count );
end
18
How do I get the selected files or folders as they are displayed
with ExShellView1 do
begin
	Objects.Get(Integer(EXSHELLVIEWLib_TLB.AsDisplayed) Or Integer(EXSHELLVIEWLib_TLB.SelectedItems));
	OutputDebugString( Objects.Count );
end
17
How do I get the selected files or folders
with ExShellView1 do
begin
	Objects.Get(EXSHELLVIEWLib_TLB.SelectedItems);
	OutputDebugString( Objects.Count );
end
16
How can I disable or enable the control's context menu

with ExShellView1 do
begin
	DefaultMenuItems := False;
end
15
How can I include only files that match a pattern

with ExShellView1 do
begin
	IncludeObjectType := EXSHELLVIEWLib_TLB.PatternObjects;
	FilePattern := '*.exe *.lnk';
end
14
How can I include only files that match a pattern

with ExShellView1 do
begin
	IncludeObjectType := EXSHELLVIEWLib_TLB.PatternObjects;
	FilePattern := '*.bmp';
end
13
How can I list only folders in the view

with ExShellView1 do
begin
	IncludeObjectType := EXSHELLVIEWLib_TLB.FoldersOnly;
end
12
How do I specify what objects files or folders should be included in the list

with ExShellView1 do
begin
	IncludeObjectType := EXSHELLVIEWLib_TLB.FoldersOnly;
end
11
How do I browse a special folder

with ExShellView1 do
begin
	BrowseFolder := (IUnknown(ShellFolder[SpecialFolder[EXSHELLVIEWLib_TLB.Programs]]) as EXSHELLVIEWLib_TLB.ExShellFolder);
end
10
How can I go up to one level, so I can browse the parent folder

with ExShellView1 do
begin
	BrowseFolder := (IUnknown(ShellFolder['C:\']) as EXSHELLVIEWLib_TLB.ExShellFolder);
	UpOneLevel();
end
9
How do I browse a specified folder

with ExShellView1 do
begin
	BrowseFolder := (IUnknown(ShellFolder['C:\']) as EXSHELLVIEWLib_TLB.ExShellFolder);
end
8
How can I disable or enable the entire control

with ExShellView1 do
begin
	Enabled := False;
end
7
How do I refresh the control
with ExShellView1 do
begin
	Refresh();
end
6
How can I change the control's font

with ExShellView1 do
begin
	f := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('StdFont'))) as stdole_TLB.StdFont);
	with f do
	begin
		Name := 'Verdana';
		Size := 12;
	end;
	Font := (IUnknown(f) as stdole_TLB.StdFont);
end
5
How can I change the view, so it displays as THUMBNAIL

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.Thumbnail;
end
4
How can I change the view, so it displays as a a grid with details

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.Details;
end
3
How can I change the view, so it displays as a list

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.List;
end
2
How can I change the view, so it displays small icons

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.SmallIcon;
end
1
How can I change the view, so it displays large icons

with ExShellView1 do
begin
	ViewMode := EXSHELLVIEWLib_TLB.LargeIcons;
end