「Gz:lsplistboxmulti」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
編集の要約なし
編集の要約なし
 
(同じ利用者による、間の5版が非表示)
2行目: 2行目:


; 構文
; 構文
: (LspListBoxMulti''msg1'' ''main'' ''list'')  
: (gz:lspListBoxMulti ''main'' ''msg1'' ''list'')  




10行目: 10行目:


; 引数
; 引数
:* msg1 … 警告ボックスに表示する文字列。
:* main … ダイアログのタイトル
:* main … ダイアログのタイトル
:* msg1 … ダイアログボックスに表示する文字列または文字列のリスト。
:* list … リストボックスに表示するリスト
:* list … リストボックスに表示するリスト




; 戻り値
; 戻り値
: リストボックスで選択された項目のインデックス値の文字列、キャンセルだったら nil
: 新仕様 → リストボックスで選択された項目の list のリスト。キャンセルだったら nil
: 旧仕様 → リストボックスで選択された項目のインデックス値の文字列、キャンセルだったら nil




; サンプル
; サンプル
<pre class="brush:autolisp;">
<pre class="brush:autolisp;">
(LspListBoxMulti "メッセージ1" "コンボボックス" '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
; 新仕様関数
(LspListBoxMulti '("メッセージ\t1" "メッセージ\t2" "メッセージ\t3") "コンボボックス" '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
(gz:lspListBoxMulti "複数選択リストボックス" '("メッセージ1") '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
(gz:lspListBoxMulti "複数選択リストボックス" nil '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
; "0 2 3" が選ばれた時の返り値 : ("aaa" "あああ" "ぁぁぁ")
; 旧仕様関数
(gz:lspListBoxMulti "複数選択リストボックス" '("メッセージ1") '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
(gz:lspListBoxMulti "複数選択リストボックス" nil '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
; 返り値サンプル : "0 2 3"
; 返り値サンプル : "0 2 3"


(defun gz_msgboxs_sample (/ result)
 
   ; gz_msgbox 関連の表示サンプル
(defun gz_msgbox_test (/ result)
   (setq result (lspOkCancel '("メッセージ1" "メッセージ2" "メッセージ3") "OK-Cancel メッセージボックス"))
   ; gz_msgbox 関連関数のテスト
   (setq msg1 '("メッセージ1" "メッセージ2" "メッセージ3")
        lst1 '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
 
  (setq result (gz:lspOkCancel "OK-Cancel メッセージボックス" msg1))
   (alert (if (= T result) "OK" "キャンセル"))
   (alert (if (= T result) "OK" "キャンセル"))
   (setq result (lspYesNo '("メッセージ1" "メッセージ2" "メッセージ3") "Yes-No メッセージボックス"))
   (setq result (gz:lspYesNo "Yes-No メッセージボックス" msg1 ))
   (alert (if (= T result) "Yes" "No"))
   (alert (if (= T result) "Yes" "No"))
   (setq result (lspokonly '("メッセージ1" "メッセージ2" "メッセージ3") "OK Only メッセージボックス"))
   (setq result (gz:lspokonly "OK Only メッセージボックス" msg1 ))
   (alert (if (= T result) "OK" "エラー"))
   (alert (if (= T result) "OK" "エラー"))
   (setq result (lspRetryCancel '("メッセージ1" "メッセージ2" "メッセージ3") "Retry-Cancel メッセージボックス"))
   (setq result (gz:lspRetryCancel "Retry-Cancel メッセージボックス" msg1 ))
   (alert (if (= T result) "リトライ" "キャンセル"))
   (alert (if (= T result) "リトライ" "キャンセル"))
   (setq result (lspGetPass  '("メッセージ1" "メッセージ2" "メッセージ3") "GetPass メッセージボックス"))
   (setq result (gz:lspGetPass  "GetPass メッセージボックス" msg1 ))
   (alert (strcat "パスワードは" result))
   (alert (strcat "パスワードは" result))
   (setq result (lspInputBox '("メッセージ1" "メッセージ2" "メッセージ3") "インプットボックス"))
   (setq result (gz:lspInputBox "インプットボックス" msg1 ))
   (alert (if (= nil result) "キャンセル" result))
   (alert (if (= nil result) "キャンセル" result))
   (setq result (lspComboBox '("メッセージ1" "メッセージ2" "メッセージ\t3") "コンボボックス" '("aaa" "AA" "あああ" "ぁぁぁ" "12345\t67890")))
   (setq result (gz:lspComboBox "コンボボックス" msg1 lst1))
   (alert (if (= nil result) ("キャンセル") result))
   (alert (if (= nil result) '("キャンセル") result))
   (setq result (lspListBox '("メッセージ1" "メッセージ2" "メッセージ\t3") "リストボックス" '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890")))
   (setq result (gz:lspListBox "リストボックス" msg1 lst1))
   (alert (if (= nil result) ("キャンセル") result))
  (alert (if (= nil result) '("キャンセル") result))
   (setq result (lspListBoxMulti '("メッセージ1" "メッセージ2" "メッセージ\t3") "リストボックス" '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890")))
  (setq result (gz:lspListBoxMulti "複数選択リストボックス" msg1 lst1))
   (alert (if (= nil result) ("キャンセル") result))
   (alert (if (= nil result) '("キャンセル") result))
   (setq result (gz:lspListBoxMulti "複数選択リストボックス" nil lst1))
  (princ result)
  (setq result (gz:lspbrowsefolder "○○のフォルダを選択" nil))
  (alert (if (= nil result) '("キャンセル") result))
  (setq result (GZ:popup "ポップアップメッセージ" "メッセージ文字列。" (+ 2 48 4096)))
   (alert (if (= nil result) '("キャンセル") result))
   (princ)
   (princ)
)
)


</pre>
</pre>





2020年8月8日 (土) 21:26時点における最新版

構文
(gz:lspListBoxMulti main msg1 list)


機能
複数項目選択可能なリストボックスを表示する。


引数
  • main … ダイアログのタイトル
  • msg1 … ダイアログボックスに表示する文字列または文字列のリスト。
  • list … リストボックスに表示するリスト


戻り値
新仕様 → リストボックスで選択された項目の list のリスト。キャンセルだったら nil
旧仕様 → リストボックスで選択された項目のインデックス値の文字列、キャンセルだったら nil


サンプル
; 新仕様関数
(gz:lspListBoxMulti "複数選択リストボックス" '("メッセージ1") '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
(gz:lspListBoxMulti "複数選択リストボックス" nil '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
; "0 2 3" が選ばれた時の返り値 : ("aaa" "あああ" "ぁぁぁ")
; 旧仕様関数
(gz:lspListBoxMulti "複数選択リストボックス" '("メッセージ1") '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
(gz:lspListBoxMulti "複数選択リストボックス" nil '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))
; 返り値サンプル : "0 2 3"


(defun gz_msgbox_test (/ result)
  ; gz_msgbox 関連関数のテスト
  (setq msg1 '("メッセージ1" "メッセージ2" "メッセージ3")
        lst1 '("aaa" "AA" "あああ" "ぁぁぁ" "1234567890"))

  (setq result (gz:lspOkCancel "OK-Cancel メッセージボックス" msg1))
  (alert (if (= T result) "OK" "キャンセル"))
  (setq result (gz:lspYesNo "Yes-No メッセージボックス" msg1 ))
  (alert (if (= T result) "Yes" "No"))
  (setq result (gz:lspokonly "OK Only メッセージボックス" msg1 ))
  (alert (if (= T result) "OK" "エラー"))
  (setq result (gz:lspRetryCancel "Retry-Cancel メッセージボックス" msg1 ))
  (alert (if (= T result) "リトライ" "キャンセル"))
  (setq result (gz:lspGetPass  "GetPass メッセージボックス" msg1 ))
  (alert (strcat "パスワードは" result))
  (setq result (gz:lspInputBox "インプットボックス" msg1 ))
  (alert (if (= nil result) "キャンセル" result))
  (setq result (gz:lspComboBox "コンボボックス" msg1 lst1))
  (alert (if (= nil result) '("キャンセル") result))
  (setq result (gz:lspListBox "リストボックス" msg1 lst1))
  (alert (if (= nil result) '("キャンセル") result))
  (setq result (gz:lspListBoxMulti "複数選択リストボックス" msg1 lst1))
  (alert (if (= nil result) '("キャンセル") result))
  (setq result (gz:lspListBoxMulti "複数選択リストボックス" nil lst1))
  (princ result)
  (setq result (gz:lspbrowsefolder "○○のフォルダを選択" nil))
  (alert (if (= nil result) '("キャンセル") result))
  (setq result (GZ:popup "ポップアップメッセージ" "メッセージ文字列。" (+ 2 48 4096)))
  (alert (if (= nil result) '("キャンセル") result))
  (princ)
)



関連事項