Copy link to clipboard
Copied
Hi all,
I have been working on Windows 7 and never found any problems with list boxes in dialogs, until I ran the same script on another machine that had Windows 8.1 installed. None of the list items appears in the list box there and there is no way to work around the issue. I have submitted this bug and will report here if there is a solution. It might take a patch to get this nasty bug solved. I did not test it in any of the other Adobe application that use ExtendScript with the same ScriptUI.
Just be aware that list boxes will not work on Windows 8.1 for the time being.
Kind regards
Jang
Copy link to clipboard
Copied
Hi Jang,
I'm working with lots of listboxes on Windows 8.1 (worked on W7 before and created my scripts there), but I never was faced with that problem.
Did you test this on just ONE PC?
Copy link to clipboard
Copied
Yes, tried a couple of PCs, also tried it on a Windows 10 Preview. Same result on all non-W7 PCs. Nothing in the list box. Don't know what is going on and hope to get some answers from Adobe sooner or later. For the moment I am very cautious about using list boxes in ExtendScript.
Copy link to clipboard
Copied
Hi Jang,
I have the some problem with listboxes. Have you found a solution?
Copy link to clipboard
Copied
Hi Jang
Don´t put them inside a tabbed panel (or use a list box iniside a panel inside a tabbed panel). It seems that the problem is the tabbed panel, the rest of my list boxes are working well.
Regards,
Santi
Copy link to clipboard
Copied
The solution for using ListBox controls on Windows 8.1 is to use a container control, such as a Group (and presumably a Panel). So the resource string and the code based equivalent shown below both work. My colleague found this article that provided the clue
https://forums.adobe.com/thread/553949?tstart=0. Interestingly the ListBox without a container worked perfectly on Photoshop, maybe because UI elements are created and managed by the Flash Player according to the readme.
var res =
"dialog {\
properties:{ resizeable:true },\
orientation:'column', spacing:2, margins:2,\
listGrp: Group { orientation:'stack', alignment:['fill','fill'],\
cmdsLb: ListBox {\
properties:{numberOfColumns: 2, showHeaders:true, \
columnTitles: ['Description', 'Shortcut'], columnWidths:[100,200]}\
},\
applyBtn: Button {\
text:'Apply', alignment:['fill','bottom'] } } ,\
}";
var win = new Window ("dialog", "Test ListBox", undefined, {resizeable:true, orientation:"column", spacing:2, margins:2});
win.listGrp = win.add("group", undefined, undefined);
win.listGrp.orientation = 'stack';
win.listGrp.alignment = ['fill','fill'];
win.listGrp.cmdsLb = win.listGrp.add("listbox", undefined, undefined, {numberOfColumns: 2, showHeaders: true, columnTitles: ['Description', 'Shortcut'], columnWidths: [100,200]});
win.listGrp.applyBtn = win.listGrp.add('button', undefined, 'Apply');
win.listGrp.applyBtn.alignment = ['fill','bottom'];
Jon
Copy link to clipboard
Copied
Problem also occurs in Panel and TabPanel. Adding a Group first, solves this Problem.
Thx. Jon