# Y++ YStudio > 全中文可视化开发环境 YStudio / 语言 Y++。开发作者 一点滴。 站点:https://www.yddphp.cn/ 文档中心:https://www.yddphp.cn/docs/ 快速入门:https://www.yddphp.cn/start.html 语言基础:https://www.yddphp.cn/lang.html 卡密查询:https://www.yddphp.cn/license.html Sitemap:https://www.yddphp.cn/sitemap.xml ## 支持库与专题文档 - [YSS v1(Y++ Style Sheet)](https://www.yddphp.cn/docs/YSS.html): Y++:写针对具体控件的 YSS 前,请先读窗体 XML 获取控件 名称 与 typeId,见 文档说明 与 窗口 XML 参考。 - [音频支持库](https://www.yddphp.cn/docs/audio-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → 音频支持库。 - [字节流支持库](https://www.yddphp.cn/docs/bytestream-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → 字节流支持库。 - [摄像头类](https://www.yddphp.cn/docs/camera.html): Y++:扩展类。路径:支持库 → 扩展支持库 → 摄像头类。声明写 摄像头类 cam。 - [画布控件](https://www.yddphp.cn/docs/canvas.html): Y++:工具箱组件 画布(设计器类型名:画布;支持库:画布类)。 用于在窗口内做可交互的 2D 绘图:图形编辑、手绘笔迹、像素涂鸦、HUD 叠层、导出图片等。 - [谷歌填表类 — 完整使用说明](https://www.yddphp.cn/docs/chrome-fill.html): Y++:谷歌填表类 通过 Chrome DevTools Protocol(CDP) 控制本机 Chrome(或兼容的 Chromium / Edge),对当前附着的页面做 - [编码类(扩展类库)](https://www.yddphp.cn/docs/codec.html): Y++:扁平编解码请优先用 encoding-support.mdencoding-support.md;加解密工具见 crypto-support.mdcrypto-support.md。 - [加密解密(基础支持库)](https://www.yddphp.cn/docs/crypto-support.html): Y++:路径:支持库 → 基础支持库 → 加密解密。 - [CSV支持库](https://www.yddphp.cn/docs/csv-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → CSV支持库 → 表格文本。 - [日期时间类(扩展类库)](https://www.yddphp.cn/docs/datetime-obj.html): Y++:面向对象的本地日期时间容器(类似 Qt QDateTime)。与基础库里的扁平命令(取当前日期、计算时间 等)并存:需要「一个变量里存时间、反复读写/加减」时用本类;一次性计算仍可用原命令。 - [目录操作](https://www.yddphp.cn/docs/directory-ops.html): Y++:路径:基础支持库 → 目录操作(扁平命令,非类)。 - [Y++ 指针 / DLL 边界对照手册](https://www.yddphp.cn/docs/dll-pointers.html): 本文整理 整数指针、文本指针、字节集指针 以及相关 DLL / WinAPI 边界在 Y++ 中的全部处理方式:已支持、半支持、不支持,以及推荐写法。 - [DLL / 系统 API(`.yp`)](https://www.yddphp.cn/docs/dllapi.html): Y++:在工程中声明 Windows / DLL 导出函数,供 .yc 用别名调用。结构体仍放 .yt。 - [编码支持库](https://www.yddphp.cn/docs/encoding-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → 编码支持库。 - [文档说明](https://www.yddphp.cn/docs/examples/README.html): Y++:本目录放可照抄的示例。自定义类型以「逐字段赋值」为主,{} 为可选。 - [文档说明](https://www.yddphp.cn/docs/examples/image/README.html): Y++:字节集 图 = 图片读文件"C:\\a.jpg" 如果 图片是否有效图 == 假 { 输出图片取最后错误 返回 } 图 = 图片缩略图图, 800, 800 图 = 图片画文字图, "仅供办理", 16, 16, 24, "CCFF - [01 — 定义与字段](https://www.yddphp.cn/docs/examples/usertype/01-定义与字段.html): Y++:工程树 → 源代码 → 右键 → 新建自定义类型文件。 .yt 内只写类型,不写函数。 - [02 — 初始化与赋值](https://www.yddphp.cn/docs/examples/usertype/02-初始化与赋值.html): Y++:以下假定已定义 - [03 — 嵌套结构](https://www.yddphp.cn/docs/examples/usertype/03-嵌套结构.html): Y++:.yt - [04 — 数组](https://www.yddphp.cn/docs/examples/usertype/04-数组.html): Y++ 数组声明:元素类型 数组名 或 元素类型 数组名长度(禁止 元素类型 名)。 下标从 0 开始。长度 会预分配该长度的数组(整数元素初值为 0)。 - [05 — 函数参数与返回值](https://www.yddphp.cn/docs/examples/usertype/05-函数参数与返回值.html): Y++:点 { 整数 x = 0, 整数 y = 0 } - [06 — 复杂业务场景](https://www.yddphp.cn/docs/examples/usertype/06-复杂业务场景.html): Y++:示例可拆到多个 .yt;此处为阅读方便写在一起。优先逐字段赋值。 - [07 — 多文件组织](https://www.yddphp.cn/docs/examples/usertype/07-多文件组织.html): Y++:多个 .yt 自动合并,.yc 无需导入。 - [08 — 常见错误对照](https://www.yddphp.cn/docs/examples/usertype/08-常见错误对照.html): Y++:不必。推荐 - [09 — 多层嵌套与下标链](https://www.yddphp.cn/docs/examples/usertype/09-多层嵌套与下标链.html): Y++:下标一律从 0 开始。示例用语:部门 / 成员 / 坐标 / 单据。 - [文档说明](https://www.yddphp.cn/docs/examples/usertype/README.html): Y++:自定义类型是值语义结构体(拷贝的是整份数据),写在 .yt 文件里,工程内任意 .yc 自动可用,无需导入。 - [Excel类(exExcel)](https://www.yddphp.cn/docs/excel.html): Y++:读写 .xlsx(OOXML),无需安装 Microsoft Excel。声明写「Excel类 book」或「exExcel类 book」即可。 - [文件监视支持库](https://www.yddphp.cn/docs/filewatch-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → 文件监视支持库 → 文件监视。 - [HTTP类](https://www.yddphp.cn/docs/http.html): Y++:WinHTTP 同步 HTTP 客户端。类型名必须写 HTTP类(不要写 HTTP)。声明变量时一般会自动创建会话。 - [图片支持库](https://www.yddphp.cn/docs/image-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → 图片支持库。 - [INI支持库](https://www.yddphp.cn/docs/ini-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → INI支持库 → 配置读写。 - [JS类](https://www.yddphp.cn/docs/js.html): Y++:嵌入式 JavaScript 引擎(quickjs-ng)。类型名必须写 JS类(不要写 JS)。 - [JSON类](https://www.yddphp.cn/docs/json.html): Y++:内存中的 JSON 文档对象。类型名必须写 JSON类(不要写 JSON)。 - [键盘支持库](https://www.yddphp.cn/docs/keyboard-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → 键盘支持库 → 键盘操作。 - [支持库已知局限(尚未完善项)](https://www.yddphp.cn/docs/known-gaps.html): Y++:本文只列出当前仍不完善或需注意边界的支持库能力,便于选型与排错。完整用法见各专题文档。 - [Y++ 语言基础(给开发者与 )](https://www.yddphp.cn/docs/language.html): 本文是 Y++ 语言的规范速览,供人类开发者与 生成/修改代码时对照。 - [日志类](https://www.yddphp.cn/docs/log.html): Y++:按级别写文件(可选同时输出控制台)。声明写「日志类 log」即可。 - [邮件类](https://www.yddphp.cn/docs/mail.html): Y++:SMTP 发信 + POP3/IMAP 收信。声明写「邮件类 mail」即可。 - [鼠标支持库](https://www.yddphp.cn/docs/mouse-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → 鼠标支持库。 - [MySQL类](https://www.yddphp.cn/docs/mysql.html): Y++:扩展类(不是扁平命令库)。路径:支持库 → 扩展支持库 → MySQL类。类型名必须写 MySQL类(也接受 MYSQL类)。 - [管道类](https://www.yddphp.cn/docs/pipe.html): Y++:Win32 命名管道 / 匿名管道同步读写。声明写「管道类 p」即可。 - [二维码支持库](https://www.yddphp.cn/docs/qrcode-support.html): Y++:扁平命令(不是类)。路径:支持库 → 二维码支持库。 - [查询串类(扩展类库)](https://www.yddphp.cn/docs/query-string.html): Y++:URL 查询参数(? 后面 a=1&b=2 部分)的键值容器,类似 Qt QUrlQuery。常与 网址类、HTTP类 配合:从网址取出查询串 → 改参数 → 拼回 URL 或提交请求。 - [资源目录与「嵌入 exe」](https://www.yddphp.cn/docs/resource-embed.html): Y++:工程树 资源/ 下的文件可在 Release 打包时写入 exe(嵌入表 gyppEmbeddedRes)。路径在代码里统一写成 :/相对资源路径。 - [串口类](https://www.yddphp.cn/docs/serial.html): Y++:Win32 COM 同步读写。声明写「串口类 sp」即可。 - [语音类](https://www.yddphp.cn/docs/speech.html): Y++:扩展类库。写 语音类 voice 即可(Windows SAPI)。 - [SQLite类](https://www.yddphp.cn/docs/sqlite.html): Y++:扩展类(不是扁平命令库)。路径:支持库 → 扩展支持库 → SQLite类。类型名必须写 SQLite类。 - [TCP类使用说明](https://www.yddphp.cn/docs/tcp.html): Y++:TCP类 提供基于 TCP 的网络收发:可作服务端监听,也可作客户端连接。支持文本与字节集、可选分包、TLS,以及异步发送文件(带进度)。 - [第三方 DLL 插件对接指南](https://www.yddphp.cn/docs/third-party-dll.html): 本文说明:如何在 Y++ 中加载并调用任意第三方 DLL(图像、自动化、硬件、加密等插件),以及 C / 厂商文档里常见的参数类型在 Y++ 中有没有对应类型、没有时用哪些支持库命令转换。 - [多线程支持库](https://www.yddphp.cn/docs/thread-support.html): Y++:扁平命令式支持库(不是类)。路径 - [UDP类使用说明](https://www.yddphp.cn/docs/udp.html): Y++:UDP类 提供 UDP 数据报收发:启动端口 即服务端绑定收包;也可「连接」记住默认对端后 发送。无 TCP 式连接、无粘包;每包独立,回调带对端 IP/端口。 - [自定义类(`.ypp`)](https://www.yddphp.cn/docs/userclass.html): Y++:自定义类是值语义对象(栈上构造,赋值拷贝),与 .yt 结构体、扩展句柄类(HTTP类 等)都不同。 - [自定义类型(`.yt`)](https://www.yddphp.cn/docs/usertype.html): Y++:自定义类型是值语义结构体(拷贝整份数据),与扩展句柄类(HTTP类 / 对象类 等)不同。 - [WebSocket类使用说明](https://www.yddphp.cn/docs/websocket.html): Y++:WebSocket类 提供 客户端 WebSocket(ws:// / wss://):消息帧收发,不必自己处理粘包。底层为 WinHTTP(Windows 8+)。 - [窗口 XML 参考](https://www.yddphp.cn/docs/window-xml.html): Y++ 窗体布局保存在 XML 中。写针对具体控件的 YSS 前,请先读取对应 XML(或整理出控件名称与 typeId 清单)。 - [XML支持库](https://www.yddphp.cn/docs/xml-support.html): Y++:扁平命令式支持库(不是类)。路径:支持库 → XML支持库 → XML操作。 - [YSS · 按钮(button)](https://www.yddphp.cn/docs/yss/button.html): Y++:选择器: button · 设计器组件: 按钮 · 按名称: button名称 或 名称 - [YSS · 画布(canvas)](https://www.yddphp.cn/docs/yss/canvas.html): Y++:选择器: canvas · 设计器组件: 画布 · 按名称: canvas名称 或 名称 - [YSS · 复选框(checkbox)](https://www.yddphp.cn/docs/yss/checkbox.html): Y++:选择器: checkbox · 设计器组件: 复选框 · 按名称: checkbox名称 或 名称 - [YSS · 颜色选择器(colorpicker)](https://www.yddphp.cn/docs/yss/colorpicker.html): Y++:选择器: colorpicker · 设计器组件: 颜色选择器 · 按名称: colorpicker名称 或 名称 支持库: 组件类库 → 颜色选择器类 · 补全类名: 颜色选择器类(简拼 ysxzq / ysxzql) - [YSS · 组合框(combobox)](https://www.yddphp.cn/docs/yss/combobox.html): Y++:选择器: combobox · 设计器组件: 组合框 · 按名称: combobox名称 或 名称 - [YSS · 数据表格(datagrid)](https://www.yddphp.cn/docs/yss/datagrid.html): Y++:选择器: datagrid · 设计器组件: 数据表格 · 按名称: datagrid名称 或 名称 - [YSS · 日期选择器(datepicker)](https://www.yddphp.cn/docs/yss/datepicker.html): Y++:选择器: datepicker · 设计器组件: 日期选择器 · 按名称: datepicker名称 或 名称 - [YSS · 分组框(groupbox)](https://www.yddphp.cn/docs/yss/groupbox.html): Y++:选择器: groupbox · 设计器组件: 分组框 · 按名称: groupbox名称 或 名称 - [YSS · 标签(label)](https://www.yddphp.cn/docs/yss/label.html): Y++:选择器: label · 设计器组件: 标签 · 按名称: label名称 或 名称 - [YSS · 列表框(listbox)](https://www.yddphp.cn/docs/yss/listbox.html): Y++:选择器: listbox · 设计器组件: 列表框 · 按名称: listbox名称 或 名称 - [YSS · 菜单栏(menubar)](https://www.yddphp.cn/docs/yss/menubar.html): Y++:选择器: menubar · 设计器组件: 菜单栏 · 按名称: menubar名称 或 名称 - [消息条(扁平支持库)](https://www.yddphp.cn/docs/yss/messagebar.html): Y++:界面支持库 → 消息条 · 补全: xsxxt / cgxxt 非设计器组件。当前窗口叠加顶/底横条;与浮动 Toast(成功通知)分工不同。 显示/隐藏带滑入淡出动画。 - [YSS · 图片框(picturebox)](https://www.yddphp.cn/docs/yss/picturebox.html): Y++:选择器: picturebox · 设计器组件: 图片框 · 按名称: picturebox名称 或 名称 - [YSS · 进度条(progressbar)](https://www.yddphp.cn/docs/yss/progressbar.html): Y++:选择器: progressbar · 设计器组件: 进度条 · 按名称: progressbar名称 或 名称 - [YSS · 进度环(progressring)](https://www.yddphp.cn/docs/yss/progressring.html): Y++:选择器: progressring · 设计器组件: 进度环 · 补全: jdh - [YSS · 单选框(radiobutton)](https://www.yddphp.cn/docs/yss/radiobutton.html): Y++:选择器: radiobutton · 设计器组件: 单选框 · 按名称: radiobutton名称 或 名称 - [YSS · 滑块(slider)](https://www.yddphp.cn/docs/yss/slider.html): Y++:选择器: slider · 设计器组件: 滑块 · 按名称: slider名称 或 名称 - [YSS · 数值微调框(spinbox)](https://www.yddphp.cn/docs/yss/spinbox.html): Y++:选择器: spinbox · 设计器组件: 数值微调框 · 按名称: spinbox名称 或 名称 支持库: 组件类库 → 数值微调框类 · 补全: szwtk / spinbox / wtk - [YSS · 状态栏(statusbar)](https://www.yddphp.cn/docs/yss/statusbar.html): Y++:选择器: statusbar · 设计器组件: 状态栏 · 按名称: statusbar名称 或 名称 支持库: 组件类库 → 状态栏类 · 补全: ztl / statusbar - [YSS · 超级文本框(supertextbox)](https://www.yddphp.cn/docs/yss/supertextbox.html): Y++:选择器: supertextbox · 设计器组件: 超级文本框 · 按名称: supertextbox名称 或 名称 - [YSS · 开关(switch)](https://www.yddphp.cn/docs/yss/switch.html): Y++:选择器: switch · 设计器组件: 开关 · 按名称: switch名称 或 名称 - [YSS · 表格(tablewidget)](https://www.yddphp.cn/docs/yss/tablewidget.html): Y++:选择器: tablewidget · 设计器组件: 表格 · 按名称: tablewidget名称 或 名称 - [YSS · 选项卡(tabwidget)](https://www.yddphp.cn/docs/yss/tabwidget.html): Y++:选择器: tabwidget · 设计器组件: 选项卡 · 按名称: tabwidget名称 或 名称 - [YSS · 文本框(textbox)](https://www.yddphp.cn/docs/yss/textbox.html): Y++:选择器: textbox · 设计器组件: 文本框 / 多行文本框 · 按名称: textbox名称 或 名称 - [提示层类(扩展类库)](https://www.yddphp.cn/docs/yss/tip_layer.html): Y++:D2D 自绘提示层,可绑定任意组件或主窗口。与组件属性「提示」(Win32 Tooltip)并存。 - [YSS · 工具栏(toolbar)](https://www.yddphp.cn/docs/yss/toolbar.html): Y++:选择器: toolbar · 设计器组件: 工具栏 · 按名称: toolbar名称 或 名称 - [托盘类(非可视化)](https://www.yddphp.cn/docs/yss/tray.html): Y++:系统托盘图标,用法类似定时器类 - [YSS · 树形视图(treeview)](https://www.yddphp.cn/docs/yss/treeview.html): Y++:选择器: treeview · 设计器组件: 树形视图 · 按名称: treeview名称 或 名称 - [YSS · 浏览器(webbrowser)](https://www.yddphp.cn/docs/yss/webbrowser.html): Y++:选择器: webbrowser · 设计器组件: 浏览器 · 按名称: webbrowser名称 或 名称 运行时: WebView2(需本机安装 Edge WebView2 运行时) - [多窗口设计](https://www.yddphp.cn/docs/多窗口设计.html): Y++:新建多个窗口;每个窗口下写代码的方式和主窗口完全一样。 本窗控件可以省略窗名;要动别的窗口,才写 窗口名.…。 - [工程结构](https://www.yddphp.cn/docs/工程结构.html): 新建「窗口项目」后,YStudio 会在所选位置创建与项目同名的目录。本文说明默认文件布局与常见扩展。