Hi,
There are several disks on the computer - C:\,D:\, E:\..
I need to select a folder from disk c D:\ (c getDir() or cGetDir32()).
Is it possible to make only the D:\ drive available ?
Folder Viewport
- Antonio Linares
- Site Admin
- Posts: 42519
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 31 times
- Been thanked: 75 times
- Contact:
Re: Folder Viewport
Sorry, Antonio, I didn't understand. I can specify the initial path, but the rest of the disks will also be visible and can be selected
- Antonio Linares
- Site Admin
- Posts: 42519
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 31 times
- Been thanked: 75 times
- Contact:
Re: Folder Viewport
Code: Select all | Expand
#include "FiveWin.ch"
function Main()
local oDlg, oTree
DEFINE DIALOG oDlg TITLE "Select a folder" SIZE 600, 400
@ 10, 10 TREEVIEW oTree OF oDlg SIZE 200, 180 PIXEL
@ 0.5, 40 BUTTON "OK" OF oDlg ACTION MsgInfo( oTree:GetSelected():cPrompt ) SIZE 50, 15
ACTIVATE DIALOG oDlg CENTER ;
ON INIT ( oDlg:Show(), GetFolders( "c:", oTree ), .T. )
return nil
function GetFolders( cPath, oItem )
local aFolders := Directory( cPath + "\*.*", "D" )
AEval( aFolders, { | aFolder, oNewItem | If( aFolder[ 5 ] == "D" .and. aFolder[ 1 ] != "." .and. aFolder[ 1 ] != "..",;
( oNewItem := oItem:Add( Upper( aFolder[ 1 ] ) ), GetFolders( cPath + "\" + aFolder[ 1 ], oNewItem ) ),) } )
return nil
Re: Folder Viewport
That is, make your own version of the cGetDir() function? Thank you, Antonio! I'll try