专题---全局函数-待更新,估计很久

一、ACAP类

1.1 AcApGetDatabase函数

  • Command.cpp
    #include "stdafx.h"
    #include "Commands.h"
    #include "Editor.h"
    #include "Database.h"
    
    void AddCommands()
    {	
    	Editor::AddCommand(L"c-test", ACRX_CMD_MODAL, Test);
    }
    
    void Test()
    {	// 函数用于获取指向 CAD 的CView对象 窗口的指针
    	CView *pView = acedGetAcadDwgView();
    	// 通过CView对象 窗口的指针 获取数据库对象指针
    	AcDbDatabase *pDb = AcApGetDatabase(pView);
    	if (pDb == NULL)
    	{
    		acedAlert(_T("获取数据失败!"));
    		return;
    	}
    	// 数据库获取 其自身文件的绝对路径
    	const ACHAR	*fileName;
    	pDb->getFilename(fileName);
    	AfxMessageBox(fileName);
    }
    
  • 效果
    在这里插入图片描述

二、AcCm颜色类

2.1 函数accmGetLocalizedColorNames

  • 功能:获取系统中,本地颜色名称(ACI颜色名称),用处较少
  • Commands.cpp
    #include "stdafx.h"
    #include "Commands.h"
    #include "Editor.h"
    #include "Database.h"
    
    void AddCommands()
    {	
    	Editor::AddCommand(L"c-test", ACRX_CMD_MODAL, Test);
    }
    
    void Test()
    {	// 指针数组:数组的每个元素都是ACHAR*的指针,[]优先级大于*
    	const ACHAR *colorNames[9];
    	accmGetLocalizedColorNames(colorNames);
    	for (size_t i = 0; i < 9; i++)
    		acutPrintf(_T("\n颜色本地名:%s"), colorNames[i]);
    }
    
  • 结果
    在这里插入图片描述

2.2 函数accmGetColorFromACIName

  • 功能:获取AcCmColor颜色类对象,通过ACI颜色名称

  • Commands.cpp

    #include "stdafx.h"
    #include "Commands.h"
    #include "Editor.h"
    #include "Database.h"
    
    void AddCommands()
    {	
    	Editor::AddCommand(L"c-test", ACRX_CMD_MODAL, Test);
    }
    
    void Test()
    {			
    	ACHAR str[128];
    	if (acedGetString(NULL, _T("\n输入ACI颜色名称:"), str) != RTNORM) return;
    
    	AcCmColor col;
    	if (accmGetColorFromACIName(col, str) != Acad::eOk)
    	{
    		acutPrintf(_T("\n颜色输入错误!"));
    		return;
    	}
    	acutPrintf(_T("\n颜色输入成功!"));	
    }
    
  • 获取成功的三个面板
    在这里插入图片描述

    输入正确:

    • 索引值:0~256
    • 顶级索引:红-red-1,黄-yellow-2,绿-green-3,青-cyan-4,蓝-blue-5,洋红-magenta-6,白-white-7
    • 特例:bylayer-256,byblock-0

三、AcEd类

传送门 返回 列表

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
要封装一个全局函数式组件,你可以遵循以下步骤: 1. 在 `src` 目录下创建一个新的文件夹,例如 `components`,并在该文件夹中创建一个名为 `ElDialog.vue` 的文件。 2. 在 `ElDialog.vue` 文件中编写组件的代码,如下所示: ```html <template> <div v-if="visible" class="el-dialog"> <h2 class="el-dialog-title">{{ title }}</h2> <p class="el-dialog-content">{{ content }}</p> <!-- 其他内容... --> </div> </template> <script> import { defineComponent, reactive } from 'vue'; export default defineComponent({ name: 'ElDialog', props: { title: String, content: String, // 其他 props... }, setup(props) { const visible = reactive({ value: false }); return { visible, }; }, }); </script> <style scoped> .el-dialog { /* 样式定义 */ } .el-dialog-title { /* 样式定义 */ } .el-dialog-content { /* 样式定义 */ } </style> ``` 在上述代码中,我们使用了 `reactive` 函数来创建响应式数据 `visible`,用于控制组件的显示与隐藏。通过在父组件中修改 `visible.value` 的值,可以控制 `el-dialog` 的显示状态。 3. 在 `src` 目录下创建一个名为 `main.js` 的文件,并在其中注册全局函数式组件: ```javascript import { createApp } from 'vue'; import ElDialog from './components/ElDialog.vue'; const app = createApp(); app.component('el-dialog', ElDialog); app.mount('#app'); ``` 在上述代码中,我们使用 `app.component` 方法来注册 `el-dialog` 组件为全局组件。这样,在你的应用程序的任何地方,你都可以使用 `<el-dialog>` 标签来引用该组件。 4. 在你的应用程序的主入口文件中,例如 `App.vue`,使用 `<el-dialog>` 标签来调用该组件: ```html <template> <div id="app"> <!-- 其他内容... --> <el-dialog title="对话框标题" content="对话框内容"></el-dialog> </div> </template> <script> export default { // 组件的逻辑... }; </script> <style> /* 样式定义... */ </style> ``` 现在,你就可以在整个应用程序中使用 `<el-dialog>` 标签,并传递所需的属性来显示全局函数式组件了。 请注意,以上示例只是一个简单的演示,你可以根据实际需求进行更复杂的组件逻辑和样式定义。同时,也可以根据项目的具体情况,在全局注册组件时使用其他的标签名。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值