[過去ログ] JavaScript の質問用スレッド vol.125 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
486
(1): デフォルトの名無しさん (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) [sage] 2022/12/26(月) 15:01:08.23 ID:pO4MU7IP0(1/5) AAS
var ptEQ = 25.4 / 72;
var SWmm = 0;

mainfn();
function mainfn() {
win1 = new Window('dialog', "Set Strokewidth");
win1.pnl = win1.add('panel');
win1.pnl.orientation = "column";

pg1 = win1.pnl.add('group');
pg1.orientation = "row";
pg1.add("statictext", [0, 0, 140, 23], "線幅を選択してください");

pg2 = win1.pnl.add('group');
rd21 = pg2.add("dropdownlist", [20, 40, 150, 65], ["0.1 mm", "0.12 mm", "0.15 mm", "0.2 mm", "0.25 mm",
"0.3 mm", "0.4 mm", "0.5 mm", "0.6 mm"
]);
rd21.selection = 0;

pg9 = win1.pnl.add('group');
pg9.orientation = "row";
CAN = pg9.add("button", [0, 0, 100, 30], "cancel");
OK = pg9.add("button", [0, 0, 100, 30], "OK");
CAN.onClick = function() {
win1.close()
}
OK.onClick = function() {
win1.close();
dofn();
}
win1.show();
}
487: デフォルトの名無しさん (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) [sage] 2022/12/26(月) 15:02:39.66 ID:pO4MU7IP0(2/5) AAS
function dofn() {

var SWmmS = rd21.selection.text;
var SWmm = parseFloat(SWmmS);
var SWpt = SWmm / ptEQ;

var rectObj = activeDocument.pathItems.rectangle(-420.94488, 297.638, 150, 100);
rectObj.filled = false;
rectObj.stroked = true;
rectObj.strokeColor = CMYKfn(0, 0, 0, 100);
rectObj.strokeWidth = SWpt;
rectObj.selected = true;
rectObj.remove();

function CMYKfn(c, m, y, k) { 
COL = new CMYKColor(); 
COL.cyan = c; 
COL.magenta = m; 
COL.yellow = y; 
COL.black = k; 
return COL;
}
}
488: デフォルトの名無しさん (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) [sage] 2022/12/26(月) 15:07:33.18 ID:pO4MU7IP0(3/5) AAS
線幅を変更するスクリプトなのですが、一応完成しました。
自分で使うだけならこれでいいのですが、他人に使ってもらう場合、ダイアログに「線幅を追加する」という項目を増やしたいと思っています。
rd21 = pg2.add("dropdownlist", [20, 40, 150, 65], ["0.1 mm", "0.12 mm", "0.15 mm", "0.2 mm", "0.25 mm", "0.3 mm", "0.4 mm", "0.5 mm", "0.6 mm"]);
のところに項目を追加していくようなコードを書くことは可能なのでしょうか?
自分自身を書き換えるコードだと思うのですが…
(削除はどうでしょうか? 例えば0.15 mmがいらないと思った場合、"0.15 mm"のを削除するコードを書くことは可能ですか?)
491
(1): デフォルトの名無しさん (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) [sage] 2022/12/26(月) 16:14:37.67 ID:pO4MU7IP0(4/5) AAS
>>489
489(1): デフォルトの名無しさん (スプッッ Sd5e-HEC+ [1.75.242.231]) [sage] 2022/12/26(月) 15:27:01.38 ID:oXRhIFIqd(1/2) AAS
スレ内を線幅で検索しても何も引っかからないのにこの書き出しで何か伝わると思ってるのすごいわ

線幅の配列を関数内で直書きしてるから自身を書き換えるとか面倒なことを考える必要があるわけで
関数の外に変数で宣言しとけば追加も削除もなんとでもなるでしょ
素人でもエディタで開かないとダメということですね。

var mm = ["0.1 mm", "0.12 mm", "0.15 mm", "0.2 mm", "0.25 mm", "0.3 mm", "0.4 mm", "0.5 mm", "0.6 mm"]
// 線幅の項目を増やしたり削除したい場合は、上の1行を書き換えてください

こう先頭に書き加えました。
492: デフォルトの名無しさん (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) [sage] 2022/12/26(月) 16:16:02.82 ID:pO4MU7IP0(5/5) AAS
>>490
490(1): デフォルトの名無しさん (ワッチョイ de01-WsKb [60.103.67.153]) [sage] 2022/12/26(月) 15:55:16.01 ID:gS/UmYxh0(1) AAS
確かIllustratorかなんかのスクリプトでしょ
ここ見てるほとんどはWebブラウザやnode.jsのJavaScriptは知っててもそっちは知らないと思う
文法的にはJavaScriptと同じでも出てくるオブジェクトは独自のものだろうし説明しないとわからんよ
すみません
気を付けます
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.050s