Ltk:テキスト入力欄を表示する - lisp-cookbook-ja/common-lisp GitHub Wiki

  • テキスト入力欄
;;; LTKでテキスト入力欄

(ql:quickload :ltk)


;; パッケージの作成
(defpackage :ex4-25
  (:use :common-lisp
        :ltk)
  (:export :main))

(in-package :ex4-25)

(defun main ()
  (with-ltk ()
    (wm-title *tk* "テキスト入力欄(entry)")
    (minsize *tk* 300 300)

    (let* ((msg (make-instance
                 'message
                 :text "テキスト入力欄を作ってみる"
                 :width 300
                 :background "#FFFFFF"))

           (ledit (make-instance
                   'entry
                   :width 200))
;                   :background "#FFFFFF"))

           (b1 (make-instance
                'button
                :text "Close"
                :command (lambda ()
                           (format t "終了")
                           (setf *exit-mainloop* t)))))

      (pack msg
            :side :top
            :fill :x) ; fillを指定すると、Wiindowのハシをドラッグして伸ばしてもボタンが大きくなる。

      (pack ledit
            :side
            :top)

      (pack b1
            :side :bottom
            :fill :x) ; fillを指定すると、Wiindowのハシをドラッグして伸ばしてもボタンが大きくなる。

      ;; テキストメッセージを左寄せ(このconfigureを外すと中寄せになる)
      (configure msg
                 :anchor :w
                 )

      )))

(main)