[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:06395] Re: システムメニューのキー設定は?



ひたか です。

自己レスです。

On Thu, 15 Mar 2001 07:29:47 +0900
HITAKA roa <hitaka_r@xxxxxxxxxxx> wrote:

>訊ねる前は、Windowsにメッセージを送ってやる
>しかないのかと思っていたので(そもそも、何のメッセージを送ればいいのか知
>らないし)。
上記のように書いたのですが、結局メッセージ送ることにしてしまいました。
こんな感じで、少なくともわたしの所ではうまくいってます。lisp beginnerな
ものですから、過不足がありそうですけど。

;;; begin
(provide "sysmenu")

(in-package "editor")

(eval-when (:compile-toplevel :load-toplevel :execute)
  (require "wip/winapi"))

(export '(call-sysmenu))

; winuser.h
(winapi::*define SC_KEYMENU       #xF100)
(winapi::*define WM_SYSCOMMAND    #x0112)

(defun call-sysmenu ()
  (interactive)
  (winapi::SendMessage (get-window-handle) WM_SYSCOMMAND SC_KEYMENU 32))
  
;;; end

;;あとは、キーマップに入れておしまい。
; ALT+SPACEでSystemMenuを開く
(undefine-key esc-map #\SPC)
(define-key esc-map #\SPC 'call-sysmenu)

ALT + SPACEでマークをセットしている人は違うキーマップにしてくださいね。

// -------------------------------------------------------------
    緋鷹ろあ ( Hitaka Roa )
           <mailto:hitaka_r@xxxxxxxxxxx >
----------------------------------------------------------------//

Index Home