精华内容
下载资源
问答
  • 一个ProgressBar控件:ProgressBar1,用来显示下载进度(StatusBar控件和ProgressBar控件是ActiveX控件Microsoft Windows Common Controls5.0的成员,加入工具箱的方法同WebBrowser控件),这些控件的属性值都用缺省...
  • activeX简介: ActiveX部件是Microsoft公司提供的一种用于模块集成的新的协议,它是Visual Basic工具箱的扩充部分。在程序中加入ActiveX后,它将成为开发和运行环境的一部分。Matlab实现了ActiveX自动化服务支持,在...
  • 无论是开发功能强大、性能可靠的商务软件,还是编写能处理实际问题的实用小程序,VB都是最快速、最简便的方法。 在学习可视化编程语言时,通常都是从编写最简单的程序开始的,它让初学者可以体验一下到底是如何使用...
  • 4、VB 提供了丰富控件选择,除了默认的工具箱面板上控件外,还有很多控件没有罗列出来,我们可以通过“工程‖部件”命令或在工具箱面板上单击鼠标右键,在弹出快捷菜单中选择“部件”命令,弹出如图十八窗口...
  • 以VS2005为例,首先要从工具箱中找到SerialPort控件,将其拖到设计视图下方,因为这些控件(包括定时控件Timer等)在运行时候不会显示在视图中。可以通过两种方法对串口进行配置,即点击控件...
    WinCE下的串口通信开发(VS2005,VB.Net,VC++)
     

    WinCE下的串口通信开发

    一、利用Visual Basic 开发很简单,因为有现成的控件可以直接调用

    VS2005为例,首先要从工具箱中找到SerialPort控件,将其拖到设计视图的下方,因为这些控件(包括定时控件Timer等)在运行的时候不会显示在视图中的。可以通过两种方法对串口进行配置,即点击控件的属性页码,在里面直接修改;也可以通过代码来配置成功,主要如下:

    If VBSerial.IsOpen Then

               VBSerial.Close()

           End If

            '串口设置:9600-N-8-1

           With VBSerial

               .PortName = "COM2"

               .BaudRate = 9600

               .Parity = Parity.None

               .ReceivedBytesThreshold = 13 '接受的数据包长度

               .DataBits = 8

               .StopBits = StopBits.One

            End With

    串口的基本配置完成以后,下一步就是重要的事件属性了,既要设置数据接收的事件属性,在串口控件的属性页,点击事件标志(闪电状的),右方输入事件函数的名字即可,然后在事件函数中用Try,Catch读取串口字符,代码如下:

    Dim rec_byte(LENGTH) As Byte '串口接收数据包     LENGTH是一个宏定义的数据包长度

           Try

               data_num = VBSerial.BytesToRead '串口接收到的字节数,用于测试调校程序

               Me.VBSerial.Read(rec_byte, 0, LENGTH)

               …………

               …………

               操作数组rec_byte(LENGTH)即可完成拆包等工作

           Catch ex AsTimeoutException       '超时后的处理,包括读、写超时等

               Timer1.Enabled = False

               VBSerial.Close()

               System.Threading.Thread.Sleep(300)

            End Try

    至此,即可完成Vb2005 开发WinCE的串口简单操作。

     

    二、利用Visual C++开发

    Visual C++没有封装好的现成通信控件可以直接调用,故需要用API函数或者第三方的类,这里推荐一个现成的类,见参考文件1中第十章的内容,这个类的详细内容与使用方法,书中写的已经非常仔细,这里我只将我的一点建议叙述,该类的读线程代码主要如下:

    while (TRUE)

         {

             if (WaitCommEvent(ceSeries->m_hComm,&evtMask,0))

             {            

                  SetCommMask(ceSeries->m_hComm, EV_RXCHAR | EV_CTS | EV_DSR );

                  //表示串口收到字符    

                  if (evtMask & EV_RXCHAR)

                  {

                       ClearCommError(ceSeries->m_hComm,&dwReadErrors,&cmState);

                       if(cmState.cbInQue == (ceSeries->m_RThreshold) )//这个if内的内容是我的测试

                       {

                       willReadLen= cmState.cbInQue ;

                       if (willReadLen <= 0)

                       {

                           continue;

                       }

                      

                       //分配内存

                       readBuf= new BYTE[willReadLen];

                       ZeroMemory(readBuf,willReadLen);

                       //读取串口数据

                       ReadFile(ceSeries->m_hComm,readBuf, willReadLen, &actualReadLen,0);

                      

                       //如果读取的数据大于0

                       if (actualReadLen>0)

                       {

                           //触发读取回调函数

                           if (ceSeries->m_OnSeriesRead)

                           {
                                 
    ceSeries->m_OnSeriesRead(ceSeries->m_pOwner,readBuf,actualReadLen);
                            }

                       }

     

                       //释放内存

                       delete[] readBuf;

                       readBuf= NULL;

                       }

                  }

             }

             //如果收到读线程退出信号,则退出线程

             if(WaitForSingleObject(ceSeries->m_hReadCloseEvent,500) == WAIT_OBJECT_0)

             {

                  break;

             }

    }

    原来的代码中没有那个if来限制,这样每次读取的字符数最多有8个(之前我测试的时候,发现如果数据包长度大于8,就需要分几次读完,给实际应用中造成了不便),此处我加一个if语句来判别:

    if(cmState.cbInQue ==(ceSeries->m_RThreshold) )

    cmState.cbInQue表示现在的接受缓冲区队列中的字符个数,而ceSeries->m_RThreshold是需要预先设置好的,在串口的初始化中设置:

    if(m_pSerial->OpenPort (this ,2,9600,0,8,0,16))

             SetTimer(1,1000,NULL);

         else

         AfxMessageBox(L"串口打开失败");

    最后一个16代表设置的数据包字符个数,这个是由通信协议来确定的。这样每次当检测事件为收到字符时,先等到接收缓冲区队列中的字符个数是16,然后才一次性读取字符,再发送消息给主线程,便于在主线程中一次处理拆包解析工作。

     

     

     

    参考文献

    [1] 汪兵.Windows CE 嵌入式高级编程与实例详解(C++实现),[M].中国水利水电出版社,2008

    转载于:https://www.cnblogs.com/fozu/p/3616070.html

    展开全文
  • VB书总结第一篇

    热门讨论 2020-01-15 20:29:45
    由标题、栏菜单栏和工具栏组成,还有工具箱、窗体、工程资源管理器、属性窗口、窗体布局窗口 工具栏 工具箱 工程资源管理器 属性窗口 要熟练使用操作工具文件保存和格式 Name:窗体名称 Appearance:外观 Border...

    由标题、栏菜单栏和工具栏组成,还有工具箱、窗体、工程资源管理器、属性窗口、窗体布局窗口 工具栏 工具箱 工程资源管理器 属性窗口
    要熟练使用操作工具文件的保存和格式
    Name:窗体的名称
    Appearance:外观
    Borderstyle:窗体的边框风格
    Caption:标题名称对象方法的使用
    Show方法当执行时,显示窗体并将窗体的visible属性设为true
    格式为:窗体对象名.showPrint
    方法:用于窗体,打印机,图片框等队形上输出文字或表达式的值
    1、断句符:在语句分行地方按空格然后添加一个下划线
    2、注释:用” ’ ”符号
    3、数据的类型(1)基本数据类型(2)用户自定义数据类型
    4、常数:在程序中保持不变的值
    5、变量:在程序过程中,可以发生变化的量(在用之前要声明)也可以自定义变量
    6、过程级变量还称局部变量:<dim|static><变量名>[As 数据类型]
    7、模块级变量:声明变量所在的模块中所有过程都可以访问的变量:<private|Dim><变量名>[As 数据类型]
    8、应用程序的构成:窗体、代码
    9、变量域:局部变量、模块变量、全局变量
    10、运算符与表达式:算术运算符(算术表达式)、 关系运算符(关系表达式) 逻辑运算符(逻辑表达式)
    11、流程控制语句
    (1) 选择结构:进行条件判断If语句、select case语句用于多分支选择结构
    (2) 循环结构For。。。Next循环、do。。。Loop循环

    Integer:整形 ,类型的数据不带小数部分 正整数负数或者0占用2个字节
    Long:长整形,占用4个字节Single:单精度型,带有小数的实数4个字节,最多7个
    Double:双精度型,数据范围更大,占用8个字节,最多15个字节
    Currency:货币型,专门表示货币的类型,表示的数可以有15位整数和4位小数
    Byte:字节型,用来表示无符号数表达式优先级:算术表达式>字符串表达式>关系表达式>逻辑表达式Sqr(算术平方根函数)X必须为非负数,该函数是返回X的算术平方根
    Left:从字符串左边取n个字符
    Right:从字符串的右边取n个字符
    Mid:从字符串string的第n个字符开始向右取m个字符 VB控制结构
    [let] <变量名>=<表达式>[let] [<对象名>.]<属性名>=<表达式> 
    “=”号称为赋值号把=号右边表达式赋值给左边变量列如Y=“100” ‘将数字100赋给yX=y    ‘将字符变量赋给整型变量x Print 方法用于在窗体、窗口、图片框或者打印机等对象中显示或打印输出字符或者表达式值print ‘输出一个空行 信息函数msgbox可以产生一个对话框来显示信息
    <变量名>=msgbox(<提示信息>[,<对话框类型>[,<对话框类型>]])  
    

    在程序中用setfocus方法来设置焦点Tab键可以把焦点在窗体上的控件之间移动的顺序,而tablndex属性可以改变控件的tab顺序
    条件语句1、单行条件语句:if<条件> then <语句块> [else <语句块2>]
    2、If<条件> then <语句块1>
    3、条件通常是关系表达式或逻辑表达式 块结构条件语句在单行结构条件语句中如果分支执行操作复杂,可以使用块结构条件语句
    Text1.setfocusText1.text= “”Label3.caption = “” Elseif格式If<条件>then<语句块1>Elseif <条件2>then<语句块2>Elseif <条件3>then<语句块3>。。。
    [else <语句块n>]End If Select case 语句可以实现多分支选择, 循环结构程序设计被重复执行的程序段称为循环体,
    循环体可以简化程序语句有:for。。。Next、do。。。Loop、for each。。。Next和while。。。Wenddo。。。Loop语句是通过检测循环条件决定循环格式
    Do[while|until<条件>][循环体]
    Toop

    展开全文
  • 第三步,从工具箱中拖到Chartlet图标到您ASP.NET页面上。 第四步,选择Chartlet控件的显示方式 (一个属性设置)。 第五步,在后台页面调用Chartlet数据绑定方法 (一次数据绑定)。 好了,运行你ASP.NET页面,...
  • VB程序设计及应用

    2012-11-26 14:07:12
    1.3.3 工具箱窗口 1.3.4 属性窗口 1.3.5 代码窗口 1.3.6 调色板窗口 1.3.7 窗体布局窗口 1.3.8 立即窗口 1.3.9 对象浏览器窗口 习题9 第2章 VB基本概念与操作 2.1 可视化编程基础 2.2 VB应用...
  • vb源程序呀呀

    2013-03-30 19:55:24
    Spreadsheet.AllowPropertyToolbox 控制是否显示属性工具箱。 Spreadsheet.AutoFit 决定控件是否处于”自动适应”模式。 Spreadsheet.Dirty 当控件中有任何修改,任何单元被改变后,这个属性会被置为true。通常使用...
  • VB控件属性使用大全

    2011-12-15 12:02:34
    (4)使用同样的方法选择需要添加的其它控件; (5)单击“确定”按钮,即可将所选ActiveX控件添加到工具箱里。 窗体(FORM)的常用属性 属性 说明 (Name)窗体的名称 ActiveControl返回焦点所在的控件,该属性设计...
  • 2,在工具箱中找到DTPicker控件图标 ,并绘制到窗体中,即完成了控件添加和绘制步骤。 DTPicker控件常用属性和方法 1,Format属性 返回或设置一个值,决定在控件中显示文本所使用格式类型。 2,Custom

    大家好,本节课程一起来学习ActiveX控件之DTPicker日期选择控件。

    如何添加DTPicker控件?

    1,在“工程”→“部件”选项卡中,找到Microsoft Windows Common Controls-2 6.0(SP6),并勾选前方复选框,单击应用和确定按钮。

    图片

    2,在工具箱中找到DTPicker控件图标 图片
    ,并绘制到窗体中,即完成了控件的添加和绘制步骤。

    图片

    DTPicker控件常用属性和方法

    1,Format属性
    返回或设置一个值,决定在控件中显示文本所使用的格式类型。
    在这里插入图片描述

    2,CustomFormat属性
    用户自定义格式,当Foramat属性设置为dtpCustom值时,可以使用自定义格式。

    自定义格式支持如下格式:
    图片

    举例:
    将CustomFormat设置为"yyyy/mm/dd hh:mm:ss",则控件显示的日期为:
    “2020/07/10 11:30:52”

    3,UpDown属性
    返回或设置一个值,决定是否在DTPicker控件右边显示UP-Down按钮。

    设置UpDown属性为True时,控件样式如下所示:

    图片

    4,Value属性
    返回或设置DTPicker控件当前值。
    举例:

    Private Sub Command1_Click()  
      Print DTPicker1.Value
    End Sub
    

    以上就是本节课程的全部内容了,感谢阅读。

    展开全文
  • VB编程资源大全

    2007-10-17 20:47:23
    (58KB) 54,noseek.zip VB6部件工具箱,你也可以实现了! (40KB) 55,pengqiang.zip 模拟喷枪(3KB) 56,rtext.zip 输出文本控制技巧(4KB) 57,russian.zip 俄罗斯方块源代码,支持单人,双人...
  • ---- ActiveX 控件是 Visual Basic 工具箱的扩充部分。使用 ActiveX 控件的方 法与使用其它标准内装的控件,如 CheckBox 控件,完全一样。在程序中加入 ActiveX 控件后,它将成为开发和运行环境的一部分,并为应用...
  • VB.NET入门经典(第三版).pdf

    千次下载 热门讨论 2013-02-17 16:12:20
    1.4.2 工具箱 1.4.3 改进型匈牙利表示法 1.4.4 代码编辑器 1.5 使用帮助系统 1.6 小结 1.7 练习 第2章 Microsoft .NET Framework …… 第3章 编写软件 第4章 流程控制 第5章 处理数据结构 第6章 建立Windows应用程序...
  • VB.NET控件之ComboBox

    千次阅读 2009-11-28 17:39:00
    Combobox(组合框)控件相当于将文本框和列表框功能结合在一起。...ComboBox控件在工具箱图标如图所示:1.使用组合框和列表框通常,组合框适用于建议性选项列表,而当希望将输入限制在列表之内时,应使用列表框。

    Combobox(组合框)控件相当于将文本框和列表框的功能结合在一起。这个控件可以实现输入文本来选定项目,也可以实现从列表中选定项目这两种选择项目的方法。如果项目数超过了组合框能够显示的项目数,控件上将自动出现滚动条。用户可以上下或左右滚动列表。ComboBox控件在工具箱中的图标如图所示:

    1.使用组合框和列表框
    通常,组合框适用于建议性的选项列表,而当希望将输入限制在列表之内时,应使用列表框。组合框包含编辑区域,因此可将不在列表中的选项输入列区域中。此外,组合框节省了窗体的空间。只有单击组合框的向下箭头时(Style属性值为1的组合框除外,它总是处于下拉状态)才显示全部列表,所以无法容纳列表框的地方可以很容易地容纳组合框。
    2.组合框的样式
    此处有三种组合框样式。每种样式都可在设计时或运行时来设置,而且每种样式都使用数值或相应的Visual Basic常数来设置组合框的样式。
    样式值常数:下拉式组合框值为0,Vb.net中的常数值为DropDown;简单组合框值为1,Vb.net中的常数值为Simple;下拉式列表框值为2,vb.net中的常数值为DropDownList。
    3.下拉式组合框
    在缺省设置(Style=0)下,组合框为下拉式。用户可象在文本框中一样直接输入文本,也可单击组合框右侧的附带箭头打开选项列表。选定某个选项后,将此选项插入到组合框顶端的文本部分中。当控件获得焦点时,也可按Alt+↓键打开列表
    4.简单组合框
    将组合框的Style属性设置为1,将指定一个简单的组合框,任何时候都在其内显示列表。为显示列表中所有项,必须将列表框绘制得足够大。当选项数超过可显示的限度时将自动插入一个垂直滚动条。用户可直接输入文本,也可从列表中选择。象下拉式组合框一样,简单组合框也允许用户输入那些不在列表中的选项。
    5.下拉式组合框
    下拉式组合框(Style=2)与正规列表框相似--它显示项目的列表,用户必须从中选择,但下拉式列表框与列表框不同之处在于,除非单击框右侧的箭头,否则不显示列表。
    这种列表框与下拉式组合框的主要差别在于,用户不能在列表框中输入选项,而只能在列表中选择。当窗体上的空间较少时,可使用这种类型的列表框。
    6.添加项目
    为在组合框中添加项目,应使用Insert方法,其语法如下:
    ComboboxName.Items.Insert(index As Integer,item As Object)
    "comboboxName"为列表框或组合框名称,item为在列表中添加的字符串表达式,用引号括起来。Index用来指定新项目在列表中的插入位置。Index为0表示第一个位置。当在第一个位置时,也可以用语法:
    combobox.Items.Add(item As Object)
    通常在设计时或在New过程中添加列表项目,但也可在任何时候使用Insert方法。这样就能动态在列表中添加项目。以下代码将“Chardonnay”,“Fum Blanc”,“Gewztraminer”和“Zinfandel”放置到名为combobox1,Style属性为0(DropDown)的组合框中:

    Public Sub New() ... ... Combobox1.Items.Insert "Chardonnay" Combobox1.Items.Insert "Fum Blanc" Combobox1.Items.Insert "Gewztraminer" Combobox1.Items.Insert "Zinfandel" End Sub

    7.设计时添加项目
    在设计时,也可设置组合框控件“属性”窗口的Items属性,从而在列表中添加项目。选定Items属性并单击按钮后就可以输入列表项目,然后按回车键换到新的一行。
    只能将项目添加到列表的末尾。所以,如果要将列表按字母顺序排序,则应将Sorted属性设置为True.
    8.指定位置添加项目
    为了在列表指定位置添加项目,应在新项目后指定索引值。例如,下行代码将"Piont Noir"插入到第一个位置并把其他项目的位置向下调整:
    Combobox1.Items.Insert(0,"Pinot Noir")
    注意:指定列表中的第一个位置的是0而不是1
    9.排序列表
    将Sorted属性设置为True并省略索引,则可在列表中指定按字母顺序添加的项目。排序时不区分大小写。将sorted属性设置为true后,Items.Insert方法将导致不可预料的非排序结果。
    10.删除项目
    可在组合框中用Items.Remove方法来删除项目。Items.Remove有一个参数index,它指定要删除的项目:combobox1.Items.Remove(index)及index参数和Items.Insert中的参数相同。例如,为了删除列表中的第一个项目,应添加下面一行代码:
    combobox1.Items.Remove(0)
    若要删除所有列表项目,就使用Clear方法:
    combobox1.Clear
    11.用Text属性获取列表内容
    获取当前选项目值的最简单的常用方法就是使用Text属性。在运行时无论向控件的文本框部分输入了什么文本,Text属性都与这个文本相对应。它可以是选定的列表选项,或者是用户在文本框中输入的字符串。例如,如果用户选定列表框中的“chardonnay”,则通过下列代码显示有关“chardonnay”的信息:

    Private Sub Combobox1_click(Byval sender As Object,Byval e As System.EventArgs) If Combobox1.Text="Chardonnay" Then Textbox1.Text="Chardonnay is a midium-bodied white wine." End If End Sub

    其中Text属性包含Combobox1列表框中当前选定的项目。代码查看是否选择了“Chardonnay”,若是如此,则在文本框中显示信息。
    12.用Items属性访问列表选项
    有了Items属性就可访问列表中所有项目,该属性包含一个数组,而且列表中的每个项目都是数组的元素。每一项都表示为字符串的形式。为了引用列表中的项目,应使用如下语法:
    ComboboxName.Items(index)
    ComboboxName为组合框名称,而index是项目的位置。顶端项目的索引为0,下一个项目的索引为1,依次类推。例如,在文本框中,以下语句显示列表中的第三个项目(index=2):
    Text1.Text=CStr(Combobox1.Items(2))
    13.用SelectIndex属性判断位置
    想要知道组合框列表中选定项目位置,可以由SelectIndex属性得到。该属性设置或返回控件中当前选定项目的索引值,而且只在运行时有效。对组合框的SelectIndex属性进行设置时也会触发控件的Click事件。若选定第一个(项端)项目,则属性值为0;选定的下一个项目属性值为1,依次类推。如果未选定项目,或者用户在组合框中输入选项(样式0或1)而不在列表中选择现有的项目,则SelectIndex为-1。
    14.Items.Count属性返回项目数
    为了返回组合框中的项目数,应使用Items.Count属性。例如,下列语句用Items.Count属性判断组合框中的项目数:
    TextBox1.Text="You have"&Combobox1."Items.Count"&"_entries listed"

    展开全文
  • VB.NET 入门经典 (第三版)

    热门讨论 2009-07-29 16:56:26
    1.4.2 工具箱 14 1.4.3 改进型匈牙利表示法 17 1.4.4 代码编辑器 18 1.5 使用帮助系统 21 1.6 小结 23 1.7 练习 23 第2章 Microsoft .NET Framework 24 2.1 Microsoft信心来自于Windows 24 2.1.1 MSN 1.0 25 2.1.2...
  • 1.4.2 工具箱 14 1.4.3 改进型匈牙利表示法 17 1.4.4 代码编辑器 18 1.5 使用帮助系统 21 1.6 小结 23 1.7 练习 23 第2章 Microsoft .NET Framework 24 2.1 Microsoft信心来自于Windows 24 2.1.1 MSN 1.0 25 2.1.2...
  • VB编程资源大全(源码 网络)

    热门讨论 2007-10-17 22:54:27
    (3KB) 42,nettools.ZIP <br>十分Cool程序,一个网络工具箱,可以实现包括主机察看、网络测速、Ping、段口扫描、路由跟踪等功能。不可不看。推荐下载。(71KB) 43,webserver.ZIP 一个利用VB实现Web ...
  • 1.4.2 工具箱 14 1.4.3 改进型匈牙利表示法 17 1.4.4 代码编辑器 18 1.5 使用帮助系统 21 1.6 小结 23 1.7 练习 23 第2章 Microsoft .NET Framework 24 2.1 Microsoft信心来自于Windows 24 2.1.1 MSN 1.0 25 2.1.2...
  • 版权声明:本文为博主...本节所讲对话框是在vs工具箱组件。 vs提供了颜色打开文件对话框、保存文件对话框、对话框、字体对话框、文件夹对话框 五个组件: 不同于控件,组件不会显示在窗体上。双击OpenF...
  • NET程序员开发利器.NET Reflector 一、 简介  程序集,作为.NET时代动态链接库,蕴藏了太多...在如今.NET时代,Reflector又成为每个严肃.NET开发人员工具箱中必不可少精髓工具之一。怎么样,请赶紧试锋吧。
  • NET程序员开发利器.NET Reflector 一、 简介  程序集,作为.NET时代动态链接库,蕴藏了太多...在如今.NET时代,Reflector又成为每个严肃.NET开发人员工具箱中必不可少精髓工具之一。怎么样,请赶紧试锋吧。
  • NET程序员开发利器.NET Reflector 一、 简介  程序集,作为.NET时代动态链接库,蕴藏了太多...在如今.NET时代,Reflector又成为每个严肃.NET开发人员工具箱中必不可少精髓工具之一。怎么样,请赶紧试锋吧。
  • 作为一种软件代理工具,Agent以其强大交互功能、鲜明人性特点、优美操作界面和 简便统一编程方法,对由菜单、按钮、提示框等组成传统人机交互方式产生了很大影响, 在多媒体创作、Web应用、教育软件、...
  • 屏蔽系统热键

    2007-10-13 10:46:15
    alt+tab等热键,例如你开发环境为VB.net 2005,在 工具箱 中 添加 此组件, 默认Name为AxYFSysKey1,当调用 AxYFSysKey1.HideSysKey()方法则隐藏,调用AxYFSysKey1.ShowSysKey()方法就可以显示,就这么简单!...
  • 疯狂程序员

    热门讨论 2012-07-18 18:05:32
    比如卖车找个好造车不容易,炒蛋炒饭找只好母鸡不容易,拉广告要找个好做广告更不容易。大广告公司,别人瞧不起你;小广告公司,绝影瞧不起别人。 一直过了半个月,这事情才总算落实,还像模像样...
  • VC_6_0读写Access数据库中图像字段的方法研究.pdf VC_6_0通过ADO连接数据库的通用方法研究.pdf VC_SQLServer和Matlab混合编程管理仿真数据.pdf VC_下MSComm控件的串口通信方法.pdf VC_与Matlab混合编程技术应用分析....
  • VC_6_0读写Access数据库中图像字段的方法研究.pdf VC_6_0通过ADO连接数据库的通用方法研究.pdf VC_SQLServer和Matlab混合编程管理仿真数据.pdf VC_下MSComm控件的串口通信方法.pdf VC_与Matlab混合编程技术应用分析....

空空如也

空空如也

1 2 3
收藏数 54
精华内容 21
关键字:

vb显示工具箱的方法