乐筑天下

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

[求助]我想要这样搞CAD的标题栏

[复制链接]

11

主题

47

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2004-6-20 11:58:00 | 显示全部楼层 |阅读模式
CAD2004里新增一个命令, 好象是Alt+0 或是 Ctrl+0 就能够反复地隐藏和显现CAD界面的标题栏.         我想那一定要用到API, 我在网上找了相关的资料, 但只有如何隐藏,而没有如何显现标题栏. 所以我的问题是: 如何显示被隐藏了的标题栏?         因为我也想在CAD2002里实现这种功能.
回复

使用道具 举报

11

主题

47

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2004-6-20 12:08:00 | 显示全部楼层
这是我所能找到的相关内容的地址,请大家参考.
http://www.china-askpro.com/msg26/qa76.shtml
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2004-6-20 14:33:00 | 显示全部楼层
  1. Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  2. Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
  3. Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
  4. Const GWL_STYLE = (-16)
  5. Const WS_CAPTION = &HC00000
  6. Const SWP_FRAMECHANGED = &H20
  7. Const SWP_NOMOVE = &H2
  8. Const SWP_NOSIZE = &H1
  9. Const HWND_TOP = 0
  10. Private hasTitleBar As Boolean
  11. Public Sub TitleBarChange()
  12.        Dim L As Long
  13.        L = GetWindowLong(Application.hwnd, GWL_STYLE)
  14.        If hasTitleBar Then
  15.                L = L Or WS_CAPTION
  16.        Else
  17.                L = L And Not (WS_CAPTION)
  18.        End If
  19.        L = SetWindowLong(Application.hwnd, GWL_STYLE, L)
  20.        hasTitleBar = Not hasTitleBar
  21.        SetWindowPos Application.hwnd, HWND_TOP, 0, 0, 0, 0, SWP_FRAMECHANGED Or SWP_NOMOVE Or SWP_NOSIZE
  22. End Sub
上述代码放在ThisDrawing内将下列代码加入到AcadDoc200?.lsp文件内(defun c:tbc() (command "-vbarun" "TitleBarChange"))
回复

使用道具 举报

11

主题

47

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2004-6-20 15:05:00 | 显示全部楼层
谢谢飞孤版主. 在声明里还再加一句
Private Declare Function GetActiveWindow Lib "user32" () As Long
就能得到当前活动窗体的句柄.         用以替换Application.hwnd就能实现了.
送上一个小软以表示对这个大家庭的谢意.
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:3kwzqufx3ca.rar 
下载次数:0  文件大小:38.46 KB  售价:2银币 [记录]
下载权限: 不限 以上或 Vip会员   [开通Vip]   [签到领银币]  [免费赚银币]


这个东西解压后是一个可执行文件. 可是个小软而已哟.
回复

使用道具 举报

11

主题

47

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2004-6-21 12:23:00 | 显示全部楼层
很容易地就把这项功能加入了我的CAD2002里面来了. 唉, VB里的API真的是难以搞通的啊, 要不是lzh741206来帮忙, 我真的不知道还要加上 SetWindowPos 这个API来做处理呢.                 下面是我的反馈, 成功了! 谢谢.
       

ajgw5z4gyxy.gif

ajgw5z4gyxy.gif
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-15 21:23 , Processed in 0.436009 second(s), 67 queries .

© 2020-2025 乐筑天下

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