乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 45|回复: 12

[编程交流] 将“Ctrl+Page Up/Down”更改为

[复制链接]

1

主题

2

帖子

1

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 10:11:46 | 显示全部楼层 |阅读模式
我知道Ctrl+Page Up和Ctrl+Page Down在布局选项卡中循环,但有没有办法将按键更改为其他方式?我总是一只手放在鼠标上,一只手放在键盘上,所以我希望将其中一只手改成Shift-Tab(因为Ctrl-Tab在打开的应用程序窗口中循环,Alt-Tab在给定应用程序中的窗口中循环)。
回复

使用道具 举报

12

主题

395

帖子

384

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
60
发表于 2022-7-6 10:18:04 | 显示全部楼层
你可以使用这个代码(不是我写的),然后在你的cui中设置“nextlayout”和“previouslayout”作为键盘快捷键命令。。。。
 
 
  1. ;; Created by: Lee Ambrosius
  2. ;; Date Written: 12/11/03
  3. ;; Includes four commands which can be redefined.
  4. ;; NextLayout - Navigates to the right and will wrap around
  5. ;;              to the left side once the end is reached
  6. ;; PreviousLayout - Navigates to the left and will wrap around
  7. ;;                  to the right side once the end is reached
  8. ;; FirstLayout - Navigates to the left most tab
  9. ;; LstLayout - Navigates to the right most tab
  10. ;; Gets a listing of all Layouts in the drawing
  11. (defun Get-Layout-List( / acadObj acDoc acDocLayouts layoutCount loopCount
  12.                          layoutListLocal layoutListSorted layoutName layoutPosition
  13.                          loopCountSorted)
  14. (vl-load-com)
  15. (setq acadObj (vlax-get-acad-object))
  16. (setq acDoc (vlax-get-property acadObj 'ActiveDocument))
  17. (setq acDocLayouts (vlax-get-property acDoc 'Layouts))
  18. (setq layoutCount (vlax-get-property acDocLayouts 'Count)
  19.        loopCount 0
  20.        layoutListLocal (list)
  21.        layoutListSorted (list)
  22. )
  23. (while (> layoutCount loopCount)
  24.    (setq layoutName (vlax-get-property (vlax-invoke-method acDocLayouts 'Item loopCount) 'Name))
  25.    (setq layoutPosition (vlax-get-property (vlax-invoke-method acDocLayouts 'Item loopCount) 'TabOrder))
  26.    (setq layoutListLocal (append layoutListLocal (list (list layoutPosition layoutName))))
  27.    (setq loopCount (1+ loopCount))
  28. )
  29. ;; Resort listing by TabOrder
  30. (setq layoutCountSorted 0)
  31. (while (> (length layoutListLocal) (length layoutListSorted))
  32.    (setq loopCountSorted 0)
  33.    (foreach layoutLocation layoutListLocal
  34.      (progn
  35.        (if (and (= (car layoutLocation) (length layoutListSorted)) (= (car layoutLocation) layoutCountSorted))
  36.          (progn
  37.            (setq layoutListSorted (append layoutListSorted (cdr (nth loopCountSorted layoutListLocal))))
  38.        (setq layoutCountSorted (1+ layoutCountSorted))
  39.          )
  40.        )
  41.        (setq loopCountSorted (1+ loopCountSorted))
  42.      )
  43.    )
  44. )
  45. layoutListSorted
  46. )
  47. (defun c:nextlayout ( / layout-mem-list layout-list layoutLocation)
  48. (setq layoutLocation 0)
  49. (setq layout-list (get-layout-list))
  50. (setq layout-mem-list (member (getvar "CTAB") layout-list))
  51. (if layout-mem-list
  52.    (progn
  53.      (setq layoutLocation (- (length layout-list) (length layout-mem-list)))
  54.    )
  55.    (setq layoutLocation (1+ layoutLocation))
  56. )
  57. (if (>= (1+ layoutLocation) (length layout-list))
  58.    (setvar "CTAB" (nth 0 layout-list))
  59.    (setvar "CTAB" (nth (1+ layoutLocation) layout-list))
  60. )
  61. )
  62. (defun c:previouslayout ( / layout-mem-list layout-list layoutLocation)
  63. (setq layoutLocation 0)
  64. (setq layout-list (get-layout-list))
  65. (setq layout-mem-list (member (getvar "CTAB") layout-list))
  66. (if layout-mem-list
  67.    (progn
  68.      (setq layoutLocation (- (length layout-list) (length layout-mem-list)))
  69.    )
  70.    (setq layoutLocation (1- layoutLocation))
  71. )
  72. (if (= layoutLocation 0)
  73.    (setvar "CTAB" (nth (1- (length layout-list)) layout-list))
  74.    (setvar "CTAB" (nth (1- layoutLocation) layout-list))
  75. )
  76. )
  77. (defun c:FirstLayout ( / layout-list layoutLocation)
  78. (setvar "CTAB" (nth 0 (get-layout-list)))
  79. )
  80. (defun c:LastLayout ( / layout-list)
  81. (setq layout-list (get-layout-list))
  82. (setvar "CTAB" (nth (- (length layout-list) 1) layout-list))
  83. )
  84. (princ)
回复

使用道具 举报

1

主题

2

帖子

1

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 10:24:31 | 显示全部楼层
谢谢CommandoBill!
回复

使用道具 举报

5

主题

19

帖子

14

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 10:29:10 | 显示全部楼层
 
 
 
命令“FirstLayout”实际上并不适用于第一个布局。
它需要您对空间进行建模。
 
有可能解决这个问题吗?
Tnx提前寻求帮助。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:32:46 | 显示全部楼层
我认为它可以缩短一些。。。
 
  1. [i][color=#990099];; Layout Switcher, by Lee McDonnell ~ 06.08.2009[/color][/i]
  2. [b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] lays [b][color=RED]([/color][/b][b][color=BLUE]/[/color][/b] lst[b][color=RED])[/color][/b]
  3. [b][color=RED]([/color][/b][b][color=BLUE]vl-load-com[/color][/b][b][color=RED])[/color][/b]
  4. [b][color=RED]([/color][/b][b][color=BLUE]vlax-for[/color][/b] lay [b][color=RED]([/color][/b][b][color=BLUE]vla-get-Layouts[/color][/b]
  5.                  [b][color=RED]([/color][/b][b][color=BLUE]vla-get-ActiveDocument[/color][/b]
  6.                    [b][color=RED]([/color][/b][b][color=BLUE]vlax-get-acad-object[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  7.    [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] lst [b][color=RED]([/color][/b][b][color=BLUE]cons[/color][/b] lay lst[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  8. [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]vla-get-Name[/color][/b]
  9.    [b][color=RED]([/color][/b][b][color=BLUE]vl-sort[/color][/b] lst
  10.      [b][color=RED]([/color][/b][b][color=BLUE]function[/color][/b]
  11.        [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b]a b[b][color=RED])[/color][/b]
  12.          [b][color=RED]([/color][/b][b][color=BLUE]<[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-get-TabOrder[/color][/b] a[b][color=RED])[/color][/b]
  13.               [b][color=RED]([/color][/b][b][color=BLUE]vla-get-TabOrder[/color][/b] b[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  14. [b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] c:nlay [b][color=RED]([/color][/b][b][color=BLUE]/[/color][/b] pos lst[b][color=RED])[/color][/b]
  15. [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] pos [b][color=RED]([/color][/b][b][color=BLUE]1+[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vl-position[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]getvar[/color][/b] [b][color=#ff00ff]"CTAB"[/color][/b][b][color=RED])[/color][/b]
  16.                  [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] lst [b][color=RED]([/color][/b]lays[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  17. [b][color=RED]([/color][/b][b][color=BLUE]setvar[/color][/b] [b][color=#ff00ff]"CTAB"[/color][/b]
  18.    [b][color=RED]([/color][/b][b][color=BLUE]nth[/color][/b]
  19.      [b][color=RED]([/color][/b][b][color=BLUE]cond[/color][/b] [b][color=RED]([/color][/b][b][color=RED]([/color][/b][b][color=BLUE]eq[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]length[/color][/b] lst[b][color=RED])[/color][/b] pos[b][color=RED])[/color][/b] [b][color=#009900]0[/color][/b][b][color=RED])[/color][/b] [b][color=RED]([/color][/b]pos[b][color=RED])[/color][/b][b][color=RED])[/color][/b] lst[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  20. [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  21. [b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] c:play [b][color=RED]([/color][/b][b][color=BLUE]/[/color][/b] pos lst[b][color=RED])[/color][/b]
  22. [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] pos [b][color=RED]([/color][/b][b][color=BLUE]1-[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vl-position[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]getvar[/color][/b] [b][color=#ff00ff]"CTAB"[/color][/b][b][color=RED])[/color][/b]
  23.                  [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] lst [b][color=RED]([/color][/b]lays[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  24. [b][color=RED]([/color][/b][b][color=BLUE]setvar[/color][/b] [b][color=#ff00ff]"CTAB"[/color][/b]
  25.    [b][color=RED]([/color][/b][b][color=BLUE]nth[/color][/b]
  26.      [b][color=RED]([/color][/b][b][color=BLUE]cond[/color][/b] [b][color=RED]([/color][/b][b][color=RED]([/color][/b][b][color=BLUE]minusp[/color][/b] pos[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]1-[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]length[/color][/b] lst[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=RED]([/color][/b]pos[b][color=RED])[/color][/b][b][color=RED])[/color][/b] lst[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  27. [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  28. [b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] c:flay [b][color=RED]([/color][/b][b][color=RED])[/color][/b]
  29. [b][color=RED]([/color][/b][b][color=BLUE]setvar[/color][/b] [b][color=#ff00ff]"CTAB"[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]nth[/color][/b] [b][color=#009900]1[/color][/b] [b][color=RED]([/color][/b]lays[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  30. [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  31. [b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] c:llay [b][color=RED]([/color][/b][b][color=RED])[/color][/b]
  32. [b][color=RED]([/color][/b][b][color=BLUE]setvar[/color][/b] [b][color=#ff00ff]"CTAB"[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]last[/color][/b] [b][color=RED]([/color][/b]lays[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  33. [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  34.            
回复

使用道具 举报

0

主题

5

帖子

5

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 10:39:14 | 显示全部楼层
 
太好了,李,再次感谢你的代码。
回复

使用道具 举报

5

主题

19

帖子

14

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 10:44:04 | 显示全部楼层
 
没问题伙计
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:51:16 | 显示全部楼层
有人知道如何做一个LT友好的版本哈哈?
回复

使用道具 举报

4

主题

11

帖子

7

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:54:18 | 显示全部楼层
试试这个,lisp应该适合你。
 
http://www.cadtutor.net/forum/showthread.php?19027-如何加载lisp程序
回复

使用道具 举报

0

主题

5

帖子

5

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 10:58:43 | 显示全部楼层
我不知道,但应该还能用。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-5 21:26 , Processed in 1.175437 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表