| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 881 人关注过本帖
标题:关于按钮【已解决】
只看楼主 加入收藏
yujimin
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2008-4-8
结帖率:100%
收藏
 问题点数:0 回复次数:6 
关于按钮【已解决】
我是新学生,也就是刚接触VB,想用VB编写个光驱开关和检测的按钮,条件是,要Command1和Command2是叠加在一起的,也就是说,整个对话框只能看到两个按钮,(因为Command1和Command2是叠加在一起的)在就是检测光驱有没有碟片的按钮。点击Command1后(弹出光驱),这时候就能看到Command2(关闭光驱),如果不点击Command1那Command2是永远看不见的,如此循环。谢谢大家了!!向你们学习!!!

[[it] 本帖最后由 yujimin 于 2008-4-9 12:08 编辑 [/it]]
搜索更多相关主题的帖子: 按钮 
2008-04-08 17:59
编程之星
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:285
专家分:391
注 册:2007-4-10
收藏
得分:0 
其实你只要用到一个按钮控件就OK的了。
默认的按钮文本是“弹出光驱”,点击了之后,就见按钮文本改为“关闭光驱”。反之亦然,当然,其中还要用到一个Boolean变量来判断是开还是关。

怎么越学就觉得自己越笨
2008-04-08 22:27
yujimin
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2008-4-8
收藏
得分:0 
楼上的能不能把代码写出来啊!谢谢!!
2008-04-09 03:58
论坛元老
Rank: 1
等 级:新手上路
帖 子:812
专家分:0
注 册:2008-3-31
收藏
得分:0 
Option Explicit
Private Declare Function CDdoor Lib "winmm.dll" Alias "mciSendStringA" _
(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
if command1.caption="弹出光驱" then
command1.caption="关闭光驱"
Call CDdoor("set CDAudio door open", 0, 0, 0)
elseif command1.caption="关闭光驱" then
command1.caption="弹出光驱"
Call CDdoor("set CDAudio door closed", 0, 0, 0)
end if
收到的鲜花
  • yujimin2008-04-09 12:12 送鲜花  2朵   附言:感谢
  • 论坛版主2008-04-09 17:32 送鲜花  2朵  

怎么不可以用Discuz代码呢!
2008-04-09 10:25
yujimin
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2008-4-8
收藏
得分:0 
已解决了!!呵呵!!谢谢大家了!!
这里两种都可以的!!
[bo]一个按钮的方法:[/bo]
Option Explicit
Private Declare Function CDdoor Lib "winmm.dll" Alias "mciSendStringA" _
(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long

Dim state1 As Boolean
Private Sub Command1_Click()
    If Not state1 Then
    '打开光驱
    state1 = True
    Call CDdoor("set CDAudio door open", 0, 0, 0)   
        Command1.Caption = "关闭"        
      Else
      '关闭光驱
      state1 = False
      Call CDdoor("set CDAudio door closed", 0, 0, 0)      
        Command1.Caption = "打开"        
     End If     
End Sub

[bo]还有就是:两个按钮的[/bo]
Option Explicit
Private Declare Function CDdoor Lib "winmm.dll" Alias "mciSendStringA" _
(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long

Dim state1 As Boolean

Private Sub Command1_Click()
'关闭光驱
    Command1.Visible = False
    Command2.Visible = True
Call CDdoor("set CDAudio door closed", 0, 0, 0)
End Sub

Private Sub Command2_Click()
'打开光驱
    Command2.Visible = False
    Command1.Visible = True
Call CDdoor("set CDAudio door open", 0, 0, 0)
End Sub

[bo]这是用VB6.0中文企业版,XP台式机下运行成功的![/bo]
这里真好啊!!学到了很多了!真的很感谢大家!!

[[it] 本帖最后由 yujimin 于 2008-4-9 12:37 编辑 [/it]]
2008-04-09 11:42
zougonghua
Rank: 1
等 级:新手上路
帖 子:163
专家分:0
注 册:2008-4-1
收藏
得分:0 
Private Declare Function CDdoor Lib "winmm.dll" Alias "mciSendStringA" _
(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
这段是什么意思啊,可不可以解释下。。。谢谢
2008-04-09 12:12
yujimin
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2008-4-8
收藏
得分:0 
[bo]以下是引用 [un]zougonghua[/un] 在 2008-4-9 12:12 的发言:[/bo]

Private Declare Function CDdoor Lib "winmm.dll" Alias "mciSendStringA" _
(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, ByVal hwndCallback As Long) As ...

那是定义啊!如果没有这段 这里“ Call CDdoor”,会出错提示您,编译错误,子程序或函数未定义!

[[it] 本帖最后由 yujimin 于 2008-4-9 12:41 编辑 [/it]]
2008-04-09 12:39
快速回复:关于按钮【已解决】
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024966 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved