You can simulate multi-column listboxes using sample code (although this is insanity)) in CC2018 and CC2015.5 you can use var font = ScriptUI.newFont("Courier New", ScriptUI.FontStyle.BOLD, 12); var font2 = ScriptUI.newFont("Courier New", 0, 12); var ch_len = 7 var ch_height = 19; var w1 = 15; var w2 = 8; var w3 = 20; var h = 20; function format_item(s1, s2, s3) { try{ for (var i = 0; i < 500; i++) { s1 += " "; s2 += " "; s3 += " "; } return s1.substr(0, w1) + " " + s2.substr(0, w2) + " " + s3.substr(0, w3); } catch(e) { alert(e) } } var d = new Window("dialog") d.orientation = "row"; d.alignChildren = 'top'; d.spacing = 0; d.margins = [0,16,16,16]; var c = ""; for (var i = 0; i <= h+6; i++) c += String.fromCharCode(0x2502)+"\n"; var p1 = d.add("statictext", undefined, c, {multiline:true}) var p2 = d.add("statictext", undefined, c, {multiline:true}) var p3 = d.add("statictext", undefined, c, {multiline:true}) p1.graphics.font = font2; p2.graphics.font = font2; p3.graphics.font = font2; var l1 = d.add("listbox") l1.graphics.font = font; l1.preferredSize = [(w1+w2+w3+3)*ch_len +40, h*ch_height]; l1.add("item", format_item("123", "AAAAAAAAAAAAAAAA", "dsdhsjdh sdhsjd ")) l1.add("item", format_item("123456789012345678901234567890", "123456789012345678901234567890", "123456789012345678901234567890")) l1.add("item", format_item("asasHJHJ JHJ h", 100, "dsdhsjdh sdhsjd ")) l1.add("item", format_item("as JHJ h", 10, "dsdhh sdhsjd ")) for (var i = 1; i < 50; i++) l1.add("item", format_item("A"+i, "B"+i, "B"+i)); d.onShow = function() { try { d.bounds.width = l1.preferredSize.width + 60; var off_y = 16; var off_x = 30; p1.bounds = [off_x+w1*ch_len, off_y, (off_x+w1*ch_len)+ch_len+2, off_y + h*ch_height]; p2.bounds = [off_x+(w1+w2+1)*ch_len, off_y, off_x+(w1+w2+1)*ch_len+ch_len+2, off_y+h*ch_height]; p3.bounds = [off_x+(w1+w2+w3+2)*ch_len, off_y, off_x+(w1+w2+w3+2)*ch_len+ch_len+2, off_y + h*ch_height]; } catch(e) { alert(e); } } d.show(); in CS6 you can use var font = ScriptUI.newFont("Courier New", 0, 12); var font2 = ScriptUI.newFont("Courier", 0, 14); var ch_len = 7 var ch_height = 19; var w1 = 10; var w2 = 8; var w3 = 20; var h = 20; function format_item(s1, s2, s3) { try { for (var i = 0; i < 500; i++) { s1 += " "; s2 += " "; s3 += " "; } return s1.substr(0, w1) + " " + s2.substr(0, w2) + " " + s3.substr(0, w3); } catch(e) { alert(e); } } var d = new Window("dialog") d.orientation = "row"; d.alignChildren = 'top'; d.spacing = 0; d.margins = [16,16,16,16]; var l1 = d.add("listbox") l1.graphics.font = font; l1.preferredSize = [(w1+w2+w3+3)*ch_len +40, h*ch_height]; var c = ""; for (var i = 0; i <= h+8; i++) c += (String.fromCharCode(0x2502)+"\n"); var p1 = d.add("statictext", undefined, c, {multiline:true}) var p2 = d.add("statictext", undefined, c, {multiline:true}) var p3 = d.add("statictext", undefined, c, {multiline:true}) p1.graphics.font = font2; p2.graphics.font = font2; p3.graphics.font = font2; l1.add("item", format_item("123", "AAAAAAAAAAAAAAAA", "dsdhsjdh sdhsjd ")) l1.add("item", format_item("123456789012345678901234567890", "123456789012345678901234567890", "123456789012345678901234567890")) l1.add("item", format_item("asasHJHJ JHJ h", 100, "dsdhsjdh sdhsjd ")) l1.add("item", format_item("as JHJ h", 10, "dsdhh sdhsjd ")) for (var i = 0; i < 50; i++) l1.add("item", format_item("A"+i, "B"+i, "B"+i)); d.onShow = function() { try{ d.bounds.width = l1.preferredSize.width + 30; var off_y = 19; var off_x = 18; p1.bounds = [off_x+w1*ch_len, off_y, (off_x+w1*ch_len)+ch_len+5, off_y + h*ch_height]; p2.bounds = [off_x+(w1+w2+1)*ch_len, off_y, off_x+(w1+w2+1)*ch_len+ch_len+5, off_y+h*ch_height]; p3.bounds = [off_x+(w1+w2+w3+2)*ch_len, off_y, off_x+(w1+w2+w3+2)*ch_len+ch_len+5, off_y + h*ch_height]; } catch(e) { alert(e); } } d.show();
... View more