Technical support and scripting issues
Moderators: Dorian (MJT support), JRL
-
hoangvo81
- Pro Scripter
- Posts: 69
- Joined: Tue Feb 07, 2012 8:02 pm
Post
by hoangvo81 » Mon Dec 16, 2013 4:52 pm
Hi,
Just a snippet, since it dawns to me today when i was trying to organize the folder list into a listbox in alphabet orders.
GetFileList> , function returns the folder in descending orders where we want it in asc order.
Code: Select all
Let>GLF_Type=1
let>FoldersList=
GetFileList>c:\temp\*.*,fldList,crlf
separate>fldList,crlf,fldrs
let>k=%fldrs_count%+1
repeat>k
sub>k,1
extractFileName>fldrs_%k%,tmp
concat>FoldersList,%tmp%%crlf%
until>k=1
trim>FoldersList,FoldersList
setDialogProperty>dialog1,msListBox,Text,%FoldersList%
if you can think of a better way to do this without having to open up command and generating an output file and reading from that output file.
I would like to do all the items using Macroscheduler and not have to call addition programs.
Thanks,
Hoang
-
Rain
- Automation Wizard
- Posts: 550
- Joined: Tue Aug 09, 2005 5:02 pm
-
Contact:
Post
by Rain » Mon Dec 16, 2013 5:19 pm
Have you tried setting "Sorted" to true under ListBox properties?
Here is an example:
Code: Select all
Dialog>Dialog1
object Dialog1: TForm
Left = 358
Top = 74
HelpContext = 5000
BorderIcons = [biSystemMenu]
Caption = 'CustomDialog'
ClientHeight = 151
ClientWidth = 278
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = True
ShowHint = True
OnTaskBar = False
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 8
Top = 16
Width = 31
Height = 13
Caption = 'Sorted'
end
object Label2: TLabel
Left = 136
Top = 16
Width = 43
Height = 13
Caption = 'Unsorted'
end
object MSListBox1: tMSListBox
Left = 8
Top = 32
Width = 121
Height = 97
ItemHeight = 13
Sorted = True
TabOrder = 8
SelectedIndex = -1
end
object MSListBox2: tMSListBox
Left = 136
Top = 32
Width = 121
Height = 97
ItemHeight = 13
TabOrder = 9
SelectedIndex = -1
end
end
EndDialog>Dialog1
LabelToVar>Alphabet_Data,AlphabetRes,1,0,{"*/"}
SetDialogProperty>Dialog1,MSListBox1,Text,AlphabetRes
SetDialogProperty>Dialog1,MSListBox2,Text,AlphabetRes
Show>Dialog1,
/*
Alphabet_Data:
Z
Y
X
W
V
U
T
S
R
Q
P
O
N
M
L
K
J
I
H
G
F
E
D
C
B
A
*/
-
hoangvo81
- Pro Scripter
- Posts: 69
- Joined: Tue Feb 07, 2012 8:02 pm
Post
by hoangvo81 » Mon Dec 16, 2013 6:33 pm
Beautiful,
but it will still be a problem as we have to extract the file name from the GetFileList otherwise it will give us the full path.
none the less, did not know there was a sorted property for the listbox and will use it in the future when i do need to do so for different set of data.
Thanks
-
JRL
- Automation Wizard
- Posts: 3526
- Joined: Mon Jan 10, 2005 6:22 pm
- Location: Iowa
Post
by JRL » Tue Dec 17, 2013 5:56 pm
but it will still be a problem as we have to extract the file name from the GetFileList otherwise it will give us the full path.
Easy to fix with StringReplace>.
Code: Select all
GetFileList>%Temp_dir%*.*,vList,crlf
StringReplace>vList,%Temp_Dir%,,vList
MDL>vList