MFC ComboBox的使用

MFC使用ComboBox控件方法 Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本,下面我说一下我使用ComBox的一些方法技巧。 1.往Combox控件里插入信息 m_Searchmode.InsertString(0, "测试1");//插入一条信息,也可以利用Add... 阅读详情

MFC  RadioButton用法详解

(2013-11-13 11:54:14)
转载▼
 分类: MFC

基础介绍:

radiobutton通常都是成组使用的,在一组里面是互斥的。

分组的原则是:

1、首先将RadioButton控件定好Tab顺序,具体方法:工具栏“格式”—>“Tab键顺序”选项选中,然后按照预定的顺序依次点击对话框上面的RadioButton按钮,Tab键顺序设定完成。

2、按照上面的Tab键顺序进行分组,然后设定每组第一个RadioButton的Group属性为TRUE,分组完成,即从当前设置Group属性为TRUE的RadioButton开始直到碰到下一个选上Group属性的RadioButton的前一个RadioButton为一个组。

3、为单选控件定义Control变量或Value变量,每组只能定义一个,通过设定值来确定哪一个RadioButton被选中,其中-1表示该组均不被选中,0表示该组第一个RadioButton被选中,1表示第二个……)。

  

环境:VisualStudio2010

以对话框为例,工程名称为:RadioButtonInstance。此工程中,共创建四组RadioButton,记着设定Tab键顺序以及为每组第一个RadioButton设置Group属性。初始化对话框为下图:

MFC <wbr> <wbr>RadioButton用法详解
为该工程中的RadioButton设定下面若干变量:(为单选控件定义Control变量或Value变量,每组只能定义一个)

BOOL m_Radio1;//对应于组1 1

      BOOL m_Radio3; //对应于组2 1

      BOOL m_Radio7; //对应于组3 1

      BOOL m_Radio9; //对应于组4 1

      CButton m_RBtGroup1; //对应于组1 1    

CButton m_RBtGroup2; //对应于组2 1

      CButton m_RBtGroup3; //对应于组3 1

      CButton m_RBtGroup4; //对应于组4 1

 

添加变量

方法一:利用类向导方法添加变量(略)

方法二:直接编程如下

 

RadioButtonInstanceDlg.h文件中:

代码部分如下

classCRadioButtonInstanceDlg : public CDialogEx

{

//构造

public:

      CRadioButtonInstanceDlg(CWnd* pParent = NULL); //标准构造函数

//对话框数据

      enum { IDD = IDD_RADIOBUTTONINSTANCE_DIALOG };

      protected:

      virtual void DoDataExchange(CDataExchange* pDX);      // DDX/DDV 支持

//实现

protected:

      HICON m_hIcon;

      // 生成的消息映射函数

      virtual BOOL OnInitDialog();

      afx_msg void OnSysCommand(UINT nID, LPARAM lParam);

      afx_msg void OnPaint();

      afx_msg HCURSOR OnQueryDragIcon();

      DECLARE_MESSAGE_MAP()

public:

      BOOLm_Radio1;

      BOOL m_Radio3;

      BOOL m_Radio7;

      BOOL m_Radio9;

      CButton m_RBtGroup1;

      CButton m_RBtGroup2;

      CButton m_RBtGroup3;

      CButton m_RBtGroup4;

};

 

RadioButtonInstanceDlg.cpp文件中:

voidCRadioButtonInstanceDlg::DoDataExchange(CDataExchange*pDX)

{

      CDialogEx::DoDataExchange(pDX);

      DDX_Radio(pDX,IDC_RADIO1, m_Radio1);

      DDX_Radio(pDX, IDC_RADIO3, m_Radio3);

      DDX_Radio(pDX, IDC_RADIO7, m_Radio7);

      DDX_Radio(pDX, IDC_RADIO9, m_Radio9);

      DDX_Control(pDX, IDC_RADIO1, m_RBtGroup1);

      DDX_Control(pDX, IDC_RADIO3, m_RBtGroup2);

      DDX_Control(pDX, IDC_RADIO7, m_RBtGroup3);

      DDX_Control(pDX, IDC_RADIO9, m_RBtGroup4);

}

 

 

问题一:如何更改RadioButton默认值???

 

方法1

在定义控件变量时,默认变量初值为-1,表示此组的任何RadioButton均不被选中,如果需要改变初始默认按钮的设置情况,只需要在对话框的构造函数中把变量初值设为相应的变量值即可。下面附代码和效果图

例如 构造函数:
CRadioButtonInstanceDlg::CRadioButtonInstanceDlg(CWnd* pParent)

      : CDialogEx(CRadioButtonInstanceDlg::IDD, pParent)

{

      m_hIcon =AfxGetApp()->LoadIcon(IDR_MAINFRAME);

      //设置RadioButton初始默认值。如果此处不设置,那么默认值均为-1,即任何一个RadioButton均不被选中

      m_Radio1=-1;

      m_Radio3=3;

      m_Radio7=1;

      m_Radio9=0;

}

效果图如下:

 

 MFC <wbr> <wbr>RadioButton用法详解



方法2

只需要在对话框的OnInitDialog()方法中添加下面代码中绿色的部分即可。

BOOLCRadioButtonInstanceDlg::OnInitDialog()

{

      CDialogEx::OnInitDialog();

      // 将“关于...”菜单项添加到系统菜单中。

      // IDM_ABOUTBOX 必须在系统命令范围内。

      ASSERT((IDM_ABOUTBOX & 0xFFF0) ==IDM_ABOUTBOX);

      ASSERT(IDM_ABOUTBOX < 0xF000);

 

      CMenu* pSysMenu = GetSystemMenu(FALSE);

      if (pSysMenu != NULL)

      {

             BOOL bNameValid;

             CString strAboutMenu;

             bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);

             ASSERT(bNameValid);

             if (!strAboutMenu.IsEmpty())

             {

                    pSysMenu->AppendMenu(MF_SEPARATOR);

                    pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX,strAboutMenu);

             }

      }

      // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动

      // 执行此操作

      SetIcon(m_hIcon, TRUE);                 // 设置大图标

      SetIcon(m_hIcon, FALSE);         // 设置小图标

      // TODO: 在此添加额外的初始化代码

//此种方法可以为任何一个RadioButton设置其“是否check”状态,未指定的均为不选上状态

      ((CButton*)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);//选上

      ((CButton*)GetDlgItem(IDC_RADIO2))->SetCheck(FALSE);//不选上

      ((CButton*)GetDlgItem(IDC_RADIO4))->SetCheck(TRUE);//选上

      ((CButton*)GetDlgItem(IDC_RADIO8))->SetCheck(TRUE);//选上

      ((CButton*)GetDlgItem(IDC_RADIO9))->SetCheck(TRUE);//选上

      return TRUE;  //除非将焦点设置到控件,否则返回 TRUE

}

 

效果图如下:

 

 MFC <wbr> <wbr>RadioButton用法详解

方法3

单选控件每组只能定义个Control变量或Value变量。首先为每一组RadioButton关联一个Control变量,名字分别为m_RBtGroup1、m_RBtGroup2、m_RBtGroup3、m_RBtGroup4。然后设定RadioButton初始状态。

 

代码如下:

BOOLCRadioButtonInstanceDlg::OnInitDialog()

{

      CDialogEx::OnInitDialog();

      // 将“关于...”菜单项添加到系统菜单中。

      // IDM_ABOUTBOX 必须在系统命令范围内。

      ASSERT((IDM_ABOUTBOX & 0xFFF0) ==IDM_ABOUTBOX);

      ASSERT(IDM_ABOUTBOX < 0xF000);

      CMenu* pSysMenu = GetSystemMenu(FALSE);

      if (pSysMenu != NULL)

      {

             BOOL bNameValid;

             CString strAboutMenu;

             bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);

             ASSERT(bNameValid);

             if (!strAboutMenu.IsEmpty())

             {

                    pSysMenu->AppendMenu(MF_SEPARATOR);

                    pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX,strAboutMenu);

             }

      }

      // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动

      // 执行此操作

      SetIcon(m_hIcon, TRUE);                 // 设置大图标

      SetIcon(m_hIcon, FALSE);         // 设置小图标

      // TODO: 在此添加额外的初始化代码

// //此种方法只能为每一组的第一个RadioButton设置其“是否check”状态

   m_RBtGroup1.SetCheck(FALSE);

   m_RBtGroup2.SetCheck(TRUE);

   m_RBtGroup3.SetCheck(TRUE);

   m_RBtGroup4.SetCheck(TRUE);

      return TRUE;  //除非将焦点设置到控件,否则返回 TRUE

}

 

效果图如下:

MFC <wbr> <wbr>RadioButton用法详解

 

问题二:如何获取RadioButton当前状态???

 

获取RadioButton是否选中的状态方法如下:

 

方法一:可以使用GetCheck()获取状态。

例如:

 

((CButton *)GetDlgItem(IDC_RADIO2))->GetCheck();//返回1表示选上,0表示没选上

 

方法二:获取状态很简单,UpdateData(TRUE)后判断m_nRadio1的值即可。

例如:

UpdateData(TRUE);

CStringm_R1;

m_R1.Format(_T("thevalue of m_Radio1 is %d"),m_Radio1);

AfxMessageBox(m_R1);

 

可以根据需要为RadioButton添加鼠标单击事件

 

问题三:如何为RadioButton添加单击消息函数???

方法一:双击RadioButton按钮,进入消息函数,然后添加相应的代码。

方法二:用ClassWizard生成各单选按钮的单击消息函数,然后添加相应的代码。

例如:

voidCRadioButtonInstanceDlg::OnBnClickedRadio1()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio1=0; //选中此组的第一个RadioButton

      CString m_R1;

      m_R1.Format(_T("the value of m_Radio1 is %d"),m_Radio1);

      AfxMessageBox(m_R1);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio2()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio1=1;//选中此组的第二个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio3()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio3=0;//选中此组的第一个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio4()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio3=1;//选中此组的第二个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio5()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio3=2;//选中此组的第三个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio6()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio3=3;//选中此组的第四个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio7()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio7=0;//选中此组的第一个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio8()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio7=1;//选中此组的第二个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio9()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio9=0;//选中此组的第一个RadioButton

      UpdateData(FALSE);

}

voidCRadioButtonInstanceDlg::OnBnClickedRadio10()

{

      // TODO: 在此添加控件通知处理程序代码

      m_Radio9=1;//选中此组的第二个RadioButton

      UpdateData(FALSE);

}

 

MFC之下拉列表 ComboBox 目标:写可选择串口号 COM1 COM2~~ 1.添加变量,control型,变量名:m_com,在程序中添加程序代码“m_com.AddString(_T("COM1")); m_com.AddString(_T("COM2"));” 点击下三角,不仅没有COM1,COM2依次出现,反而是空白!!!怎么解决? 解决办法是:在BOOL CifekDlg::OnInitDialog()下直接添加 阅读详情

相关推荐

js 实现 两个checkbox互斥问题

js 实现 两个checkbox互斥问题! 值得下载看看!资源免费,大家分享!!

MFC中CheckBox在做互斥操作时遇到的隐形问题

首先,对这个checkbox进行操作时,用的不是系统的CheckBox控件,而是自己重绘的CMyCheckBox。 在当前自绘类中,是用OnLbuttonUp消息做的状态转换 void CMyCheckBox::OnLButtonUp(UINT nFlags, CPoint point) { m_bState = !m_bState; CButton::OnLButtonUp(nFla...

糯诺诺米团 1178

Cadence Allegro PCB文件对比实战:3分钟搞定两份设计差异(附颜色标注技巧)

本文详细介绍了如何高效使用Cadence Allegro的Design Compare功能进行PCB文件差异对比。通过实战工作流,可在3分钟内精准定位并理解两份设计在布局、布线、元件等方面的关键差异,并分享了自定义颜色标注技巧,帮助工程师快速聚焦重要修改,提升设计评审与团队协作效率。

weixin_29248653的博客 380

VC++之ComboBox的用法总结

1. 对话框中 添加 combox 控件 2. 添加变量定义 CComboBox m_droplist; 3. 添加内容: m_dropbox.SetCurSel(1); m_dropbox.AddString("所有数据类型"); m_dropbox.AddString("空气温度"); m_dropbox.AddString("空气湿度"); m_dr

liqing19850102的专栏 7万+

生物信息学实战:如何用STRING数据库和R语言搞定蛋白互作网络分析(附完整代码)

本文提供了一份完整的生物信息学实战指南,详细介绍了如何利用STRING数据库和R语言进行蛋白互作网络分析。从差异表达基因列表出发,涵盖数据准备、数据库连接、网络构建到高级可视化与模块识别的全流程,并附有可复现的完整R代码,帮助研究人员深入解析转录组数据背后的蛋白互作关系。

milk5的博客 948

AHB不对称半桥反激电路设计(一)变换器拓扑工作原理详解

本文详细分析了AHB(不对称半桥)反激变换器拓扑的工作原理及关键优势。该拓扑通过谐振腔结构实现原边功率管的零电压开通(ZVS)和副边整流管的零电流关断(ZCS),显著提升效率至95%以上。文章阐述了6个工作阶段的时序特征,包括谐振电感电流和电容电压的数学模型推导。AHB拓扑具有漏感能量回收、宽电压输出(适配PD快充等场景)和协同储能等优势,相比传统方案可缩小变压器体积30%,成为100-300W隔离电源的理想选择。

【Simon】的博客 7170

MFC——ComBox用法大全

MFC——ComBox用法大全 ‍Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量 假定已经创建了一个Dial

zy332719794的专栏 1453

车载机器人终极解决方案:从功能叠加到生态融合的颠覆性变革

本文提出一种融合智能汽车与家居技术的车载机器人架构。其创新点包括:1)基于多模态传感器的拟人化硬件设计,实现声源定位误差<5°、体温检测精度±0.3℃;2)跨模态情感计算引擎,综合面部表情、心率等数据构建三维情绪模型;3)协议自适应中间件,支持小米、华为等多品牌智能家居设备即插即用;4)环境自适应舵机控制,-30℃环境下扭矩保持率达92.5%。测试数据显示,该方案使交互步骤减少60%,用户满意度提升58%,日均使用时长增加2.3倍,为"人-车-家"生态融合提供了可行技术路径。

qq_42671193的博客 1130

MFC中单选框和复选框的选择

单选钮用来表示一系列的互斥选项,这些互斥项常常被分成若干个组,每组仅允许用户选择一个选项;复选框与单选按钮相象,不同之处是复选框代表多重选择,用户可以选择一个或多个选项。   void CCBaseButtonDlg::OnCheckin() { // TODO: Add your control notification handler code here GetDlgItem(

qq1041256623的专栏 1325

MCU 微控制器,在实际项目中如何选型(以 STM32为例)

1.MCU 选型需要考虑的一些因素 2.案例:传感器设备的 MCU 选型

创享 AIOT 的专栏 1万+

从登录到应用可见:在 SAP S/4HANA Cloud Private Edition 中创建用户与打通 SAP Fiori 权限的完整思路

在SAP S/4HANA系统中,用户创建远非简单的账号开通,而是涉及认证、授权、数据访问等多维度的复杂过程。用户主数据记录(User Master Record)是系统访问的起点,包含登录方式、角色分配等关键信息。认证解决"你是谁"的问题,授权则决定"你能做什么"。SAP Fiori访问链路涉及Launchpad内容分配、应用启动映射、OData服务权限等多层校验。角色(Role)通过PFCG维护,包含业务目录(Catalog)和空间(Space)等元素,共同构成完整

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 150

MFC——分组框,单选框,复选框

来自猎豹网校006 组合框“Group Box”,用于里面放置多种控件,如单选框,或者复选框等 复选框“Check Box”,方形控件,鼠标点击打勾多选。 单选按钮“Radio button”,圆形按钮控件,多个控件间单选。 注意1:单选按钮之间的“TAB顺序”必须连续 注意2:必须设置第一个单选按钮“属性”–“Group”设置为true.

hoppss 5955

详解账务核心,从入门到精通

本文系统阐述了账务体系的设计原理与实现方法,围绕支付交易的基础设施——账务系统展开深入探讨。文章首先从账务实现原理出发,强调从客户场景中抽象能力的重要性,详细解析了账务总架构及其与外围系统的协同关系。随后重点剖析了账户子系统的设计,包括账户生态、主体管理、结构设计等核心要素,并针对热点账户问题提出了多种创新解决方案。此外,文章还深入探讨了会计日切原理、营销类账务处理等专业领域,最后以支付机构场景为例,全面解析了清结算业务的账务实现模型。全文通过理论结合实践的方式,为构建高效、可靠的账务系统提供了系统性的方法

银行信息系统应用架构详解 532

MFC之ComboBox控件

添加内容 ComboBox_AddString(hwndCtl,lpsz) hwndCtl为此组合框的句柄,lpsz为需要添加的字符串,组合框不能直接通过id添加内容,所以需要得到这个控件的句柄,还得使用GetDlgItem()函数. 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); //建立一个组合框,ID可以设置为IDC

ghevinn欢迎您光临 6916

100天精通Python(可视化篇)——第80天:matplotlib绘制不同种类炫酷柱状图代码实战(簇状、堆积、横向、百分比、3D柱状图)

0. 专栏导读 1. 普通柱状图 2. 簇状柱形图 3. 堆积柱形图 4. 横向柱状图 5. 横向双向柱状图 6. 百分比堆积柱形图 7. 3D柱形图 8. 3D堆积柱形图 9. 3D百分比堆积柱形图

努力让自己发光,对的人才能迎着光而来 2万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

MFC之ComboBox

MFC中的ComboBox的使用 - 风信子花园 - 优快云博客 https://blog.youkuaiyun.com/yunqi415/article/details/6963720 mfc控件使用— combobox 控件 - hhj_321 - 博客园 https://www.cnblogs.com/hhj-321/p/3371171.html m_cb1.InsertString(0, "灰度...

蜕变之路的博客 790

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

MFC ComboBox

MFC ComboBox   一、入门篇   ComboBox (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量 假定已经创建了一个Dialog,并

三少GG 2825

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

<Windows> MFC重绘系统ComboBox

MFC重绘系统ComboBox软件环境实现功能实现原理ComboBox属性设置技术要点效果DropDownDropListDisable Window 软件环境 Windows 10 1809 64bit VS2017 Enterprise MFC 实现功能 重绘ComboBox 添加删除按钮 自适应下拉List的宽度 记录最后一次ComboBox的窗口文本 实现原理 ComboBox属性...

Lulixue的专栏 3063

MFC组合框ComboBox

原文地址:组合框ComboBox">MFC 组合框ComboBox作者:IdeakingMFC ComboBox   一、入门篇   Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Cla

jiqiujia的专栏 1488

MFC中COMBOBOX的使用

Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量 假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控件拖放到上面。打

zhangatm的博客 2985

引用 MFC ComboBox 使用方法

<br />  <br />Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。<br />1、定义控件对应变量<br />假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控件拖放到上面。打开 Class Wizard,添加控件对应变量,如:CCombo

backbin的专栏 756

MFC中的ComboBox的使用

一、入门篇   ComboBox (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量 假定已经创建了一个Dialog,并且从控件工具箱将

u013713010的专栏 2588

MFC ListBox,ComboBox笔记

新建Dlg,在Dlg中绘制ListBox和ComboBox; 然后再BOOL CDlg2::OnInitDialog()  { CDialog::OnInitDialog(); // TODO: Add extra initialization here //初始化ListBox和ComboBox数据 m_ComboBox.AddString("20~25");

xiaohuangcat的专栏 1630
下一篇: gdb调试程序
ppwangGS
博客等级 码龄11年 58粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值