1.程序在后台运行,比如象监视程序一样,在任务栏中有图标显示
2.用什么控件可以显示FLASH播放

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/3411/3411020.xml?temp=.3062555
      

  2.   

    1.
    http://community.csdn.net/Expert/topic/3366/3366195.xml?temp=.2416193
      

  3.   

    你可以把它的窗体做为隐含属性就可以了吧
    窗体里加一个timer 
    不知道是不是你要的效果
     
    假如你安装过flash的话,vb会检测到flash控件的
     
      

  4.   

    托盘,可以用api 函数来做
      

  5.   

    作  者:  gebobo (波波)  
    等  级:    
    信 誉 值:  61  大哥,你信 誉 值咋这低,我头一回看到!
    你有N个帖子没结?????????
      

  6.   

    Public Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long
    Public Declare Function DrawIcon Lib "user32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal hicon As Long) As Long
    Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
    Public Declare Function TrackPopupMenu Lib "user32" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal x As Long, ByVal y As Long, ByVal nReserved As Long, ByVal hwnd As Long, lprc As Any) As Long
    Public Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
    Public Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As LongPublic Type POINTAPI
        x As Long
        y As Long
    End TypePublic Type NOTIFYICONDATA
        cbSize As Long                   '结构的长度
        hwnd As Long                     '消息接收窗口的句柄
        uID As Long                      '图标的标识
        uFlags As Long                   '设置参数
        uCallbackMessage As Long         '回调消息的值
        hicon As Long                    '图标句柄
        szTip As String * 64             '提示字符串
    End TypePublic Const NIM_ADD = 0             '添加图标
    Public Const NIM_MODIFY = 1          '修改图标
    Public Const NIM_DELETE = 2          '删除图标Public Const NIF_MESSAGE = 1         '当有鼠标事件发生时产生消息
    Public Const NIF_ICON = 2            '
    Public Const NIF_TIP = 4             '图标有提示字符串
    Public Const WM_LBUTTONDOWN = &H201
    Public Const WM_RBUTTONDOWN = &H204
    Public Const WM_USER = &H400
    Public Const WM_NOTIFYICON = WM_USER + &H100
    Public Const WM_COMMAND = &H111
    Public Const WM_DESTROY = &H2
    Public Const WM_DRAWITEM = &H2B
    Public Const WM_INITDIALOG = &H110
    Public Const WM_PAINT = &HF
    Public Const WM_MENUSELECT = &H11FPublic Const GWL_WNDPROC = (-4) '替换窗口处理函数Dim pmenu As Long
    Dim submenu As LongGlobal lproc As Long
    Function CMenu() As Boolean
    '这个函数获得Form1的子菜单
      Dim l As Long
      Dim l1 As Long
      
      pmenu = GetMenu(Form1.hwnd)
      submenu = GetSubMenu(pmenu, 0)
      If submenu Then
        CMenu = True
      Else
        CMenu = False
      End If
    End Function
    Function Icon_Del(ihwnd As Long) As Long
      Dim ano As NOTIFYICONDATA
      Dim l As Long
      
      ano.hwnd = ihwnd
      ano.uID = 0
      ano.cbSize = Len(ano)
      '删除图标
      Icon_Del = Shell_NotifyIcon(NIM_DELETE, ano)
    End Function
    '这个函数接收图标句柄和窗口句柄并且新建图标
    Function Icon_Add(ihwnd As Long, hicon As Long) As Long
      Dim ano As NOTIFYICONDATA
      Dim astr As String
      
      '为图标添加提示行
      astr = LTrim$("中建科技")
      ano.szTip = astr + Chr$(0)
      '设置消息接收窗口
      ano.hwnd = ihwnd
      ano.uID = 0
      '图标有提示并且可以发送消息
      ano.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
      ano.hicon = hicon
      ano.cbSize = Len(ano)
      '将图标的回调消息设置为WM_NOTIFYICON,当在图标区域有鼠标消息,系统就会向
      '消息接收窗口发送WM_NOTIFYICON消息。
      ano.uCallbackMessage = WM_NOTIFYICON
      Icon_Add = Shell_NotifyIcon(NIM_ADD, ano)
    End FunctionFunction DialogProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    '该函数为Form2的窗口处理函数。
      Dim l As Long
      Dim l1 As Long
      Dim po As POINTAPI
      
      Select Case uMsg
        Case WM_INITDIALOG
        Case WM_DESTROY
        Case WM_COMMAND
        Case WM_DRAWITEM
        Case WM_NOTIFYICON  '有鼠标事件产生
          Select Case lParam
            Case WM_LBUTTONDOWN     '按下鼠标左键
              '提示是否删除图标
              Form3.Show
            Case WM_RBUTTONDOWN '按下鼠标右键弹出菜单
              Form3.Show
            Case Else
          End Select
        Case Else
          DialogProc = False
      End Select
      DialogProc = True
    End Function
      

  7.   

    问题一: 
    sub Form_resize()
    Me.WindowState=1
    End Sub问题二:
    右键点工具栏,点“部件(O)”,找到ShockwaveFlash控件,打勾,确定,用这个控件就可以了。(这年头,没这个东西的人比女人的胡子还少了。)问题三:教你怎么结贴:登陆CSDN,点“我要去社区HOT”,打开后点左上角的“显示导航栏”,打开后点“我的技术社区”,打开后点“我的问题”,打开后点“两个基础问题,谢谢!”,打开后点中间靠右的“管理”,打开后点“WallesCai(今年过节不吃饭,要吃就吃减肥茶!) ”右面的文本框,输入50,再点上面的“密码”后的那个文本框,输入密码,点旁边的“给分”按钮,系统提示“确认要结贴吗??”,点“确定”千万注意!一步也不能错哦。否则你的VB会崩溃,PC会爆炸,硬盘会自动Format哦!
      

  8.   

    问题二:
    右键点工具栏,点“部件(O)”,找到ShockwaveFlash控件,打勾,确定,用这个控件就可以了
    用法:movive="c:\xx.swf"
     loop是否循环播放
    playing=true\false控制是否播放
      

  9.   

    1.程序在后台运行,比如象监视程序一样,在任务栏中有图标显示
    下面是一个模块。放好后直接Call AddToTray(Me, mnuTray) 调用托盘过程
    结束程序的时候RemoveFromTray 移除托盘图标就可以了。
    AddToTray(Me, mnuTray)的参数,me是一个Form,mnuTray是你点击托盘图标时要弹出的菜单。Option ExplicitPublic OldWindowProc As Long
    Public TheForm As Form
    Public TheMenu As MenuDeclare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As LongPublic Const WM_USER = &H400
    Public Const WM_LBUTTONUP = &H202
    Public Const WM_MBUTTONUP = &H208
    Public Const WM_RBUTTONUP = &H205
    Public Const TRAY_CALLBACK = (WM_USER + 1001&)
    Public Const GWL_WNDPROC = (-4)
    Public Const GWL_USERDATA = (-21)
    Public Const NIF_ICON = &H2
    Public Const NIF_TIP = &H4
    Public Const NIM_ADD = &H0
    Public Const NIF_MESSAGE = &H1
    Public Const NIM_MODIFY = &H1
    Public Const NIM_DELETE = &H2'记录 设置托盘图标的数据 的数据类型NOTIFYICONDATA
    Public Type NOTIFYICONDATA
        cbSize As Long
        hwnd As Long
        uID As Long
        uFlags As Long
        uCallbackMessage As Long
        hIcon As Long
        szTip As String * 64
    End Type'TheData变量记录设置托盘图标的数据
    Private TheData As NOTIFYICONDATA' 新的窗口过程--主程序中采用SetWindowLong函数改变了窗口函数的地址,
    ' 消息转向由NewWindowProc处理
    Public Function NewWindowProc(ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
        If Msg = TRAY_CALLBACK Then '如果用户点击了托盘中的图标,则进行判断是点击了左键还是右键
            
            If lParam = WM_LBUTTONUP Then '如果点击了左键
                If TheForm.WindowState = vbMinimized Then '如果窗体的状态是最小化
                    TheForm.WindowState = vbNormal '恢复窗体
                    TheForm.SetFocus '使窗体获得焦点
                Else
                    TheForm.WindowState = vbMinimized '反之则最小化
                End If
                Exit Function
            End If
            If lParam = WM_RBUTTONUP Then '如果点击了右键
                TheForm.PopupMenu TheMenu '则弹出右键菜单
                Exit Function
            End If
        End If
        
        NewWindowProc = CallWindowProc( _
            OldWindowProc, hwnd, Msg, _
            wParam, lParam) '如果是其他类型的消息则传递给原有默认的窗口函数End Function' 把主窗体的图标(frmMain.icon属性可改变)添加到托盘中
    Public Sub AddToTray(frm As Form, mnu As Menu)
        '保存当前窗体和菜单信息
        Set TheForm = frm
        Set TheMenu = mnu
        
      'GWL_WNDPROC获得该窗口的窗口函数的地址
        OldWindowProc = SetWindowLong(frm.hwnd, _
            GWL_WNDPROC, AddressOf NewWindowProc)
       
        With TheData '将主窗体图标添加在托盘中
            .uID = 0
            .hwnd = frm.hwnd
            .cbSize = Len(TheData)
            .hIcon = frm.Icon.Handle
            .uFlags = NIF_ICON
            .uCallbackMessage = TRAY_CALLBACK
            .uFlags = .uFlags Or NIF_MESSAGE
            .cbSize = Len(TheData)
        End With
        Shell_NotifyIcon NIM_ADD, TheData '根据前面定义NIM_ADD,设置为“添加模式”
    End Sub' 删除系统托盘中的图标
    Public Sub RemoveFromTray()
      
        With TheData
            .uFlags = 0
        End With
        Shell_NotifyIcon NIM_DELETE, TheData
        
        SetWindowLong TheForm.hwnd, GWL_WNDPROC, _
            OldWindowProc
    End SubPublic Sub SetTrayTip(tip As String)
        With TheData '删除托盘中的图标
            .szTip = tip & vbNullChar
            .uFlags = NIF_TIP
        End With
        Shell_NotifyIcon NIM_MODIFY, TheData '根据前面定义NIM_DELETE,设置为“删除模式”
    End SubPublic Sub SetTrayIcon(pic As Picture) ' 设置托盘的图标
       '判断一下pic中存放的是不是图标
        If pic.Type <> vbPicTypeIcon Then Exit Sub
     
        With TheData '更换图标为pic中存放的图标
            .hIcon = pic.Handle
            .uFlags = NIF_ICON
        End With
        Shell_NotifyIcon NIM_MODIFY, TheData
    End Sub