vb界面风格是根据系统主题风格而改变的,我想把vb某工程的所有窗体界面都应用一种系统主题风格不变,就是在以后不管在哪台机器上安装,界面风格都是那个,不会随系统主题的改变而变化。请问能实现吗?确切一点说:就是想把界面只作成某一系统主题的风格,而且不会再改变的。用vb开发软件时,改变系统的主题,所有窗体就界面也跟着改变,发布以后,还会跟着变吗?

解决方案 »

  1.   

    窗体的BorderStyle=0,标题栏、控制图标和按钮自己设计。
      

  2.   

    http://topic.csdn.net/u/20090303/02/fb11597e-66af-4f65-adb1-91014add689a.html
      

  3.   

    [size=12px]vb界面风格是根据系统主题风格而改变的,我想把vb某工程的所有窗体界面都应用一种系统主题风格不变,就是在以后不管在哪台机器上安装,界面风格都是那个,不会随系统主题的改变而变化。请问能实现吗?确切一点说:就是想把界面只作成某一系统主题的风格,而且不会再改变的。 用vb开发软件时,改变系统的主题,所有窗体就界面也跟着改变,发布以后,还会跟着变吗? [/size]
     
     直接点说:我很看好xp系统的 年韵2006 这个主题,很想将其应用到我开发的程序上,并且不会再随着系统主题的变化而变化。就像瑞星那样,不管系统主题咋变,它的界面都不不变。望诸位行家指点迷津!
      

  4.   

    用Skin++换肤
    http://www.uipower.com/
      

  5.   

    老马您好:我在您博客下了Xtreme Suite Pro ActiveX 安装完用了,的确挺好的。但仍有问题啊:用了该控件后,菜单却不见了。请问是什么问题啊?另外,怎么将其打包到安装程序发布?请指教!
      

  6.   

    打包的话,用了什么控件就打包什么控件就行了比如你使用了Codejock.SkinFramework.v12.0.1.OCX,那就只需要加上它,以及相应的样式文件(*.cjstyles)菜单问题貌似比较麻烦,确实发现改了外观后菜单就消失了....不过研究了一下,并不是"消失",而是跑到了窗体图标的位置,点一下是能点出来的.看起来有点像绘制菜单时得到了错误的客户区坐标,这个应该是这个控件的BUG了....这个BUG有些麻烦,我一时还想不到什么好的办法解决,不过找到了AisaC的一个方案,详见:http://hi.baidu.com/aisacvv/blog/item/dda9c2fa28761516a9d311c7.html希望能有帮助吧:)
      

  7.   

    连马兄都解决不了这个问题,看来没戏了。想知道像8楼那样回帖怎么弄,人多了说话有点乱,不知道和谁说呢。毕竟是新注册的,对论坛的功能一知半解。打包的问题:
    工程文件的目录为 E:\废品\废品软件设计.vbp   工程的所有窗体、模块等都在 E:\废品目录下
        数据库文件目录为 E:\废品\DataBase\feipin.mdb  
        图片文件目录为 E:\废品\Images
        SkinFramework的样式文件目录为 E:\废品\Skill
    打包时应该怎么弄啊?请指教啊,最后详细点。这些打不进去,安装完使用时会找不到文件的。
     我那天试着打包,结果就没把DataBase Images Skill打进去,便提示找不到文件,故问问您。另外能给我介绍几个好用的打包软件吗?vb自带的不太好。
        
      

  8.   

    马兄:还得请教您一个问题,关于Adodc控件的RecordSet记录删除问题,删除一条记录后指针的位置不正确删除后指针并没有指到预期的位置,却总是移到第一条或第二条。     n = Adodc2.Recordset.AbsolutePosition '指针当前的位置
        st = MsgBox("确认删除该记录吗?", vbYesNo + vbInformation, "温馨提示")
        If st = vbYes Then
          If Ebo = True Then'若是最后一条记录,删除后将指针移到第一条记录   删除后指针位置正确
            Adodc2.Recordset.Delete
            DoEvents
            Call Sleep(600)
            MsgBox "删除成功!", vbOKOnly + vbInformation, "温馨提示"
            Adodc2.RecordSource = strSQL2
            Adodc2.Refresh
            Call BofIFSet  '判断是否是第一条记录,若是在Bbo = True
            Call EofIFSet  '判断是否是最后一条记录,若是则Ebo = True  BofIFset EofIFSet自有用处
            Call Txt1Set
          Else '删除后指针的位置不正确,总指向第一条或第二条记录,不知道为什么?
            Adodc2.Recordset.Delete
            DoEvents     '因为删除后DataGrid还显示该记录,故用了延时,之后再刷新Adodc2
            Call Sleep(600)
            MsgBox "删除成功!", vbOKOnly + vbInformation, "温馨提示"
            Adodc2.RecordSource = strSQL2
            Adodc2.Refresh
            For i = 1 To n - 1        '将指针移动到当前位置即删前的下一条
               Adodc2.Recordset.MoveNext
            Next i
            Call BofIFSet
            Call EofIFSet
            Call Txt1Set
          End If
        Else
          Txt1(0).SetFocus
        End If 马兄,我将问题穿插到代码后面描述了,这样挺方便的。不知道您明白我说的问题了吗?    就是:执行Adodc2.RecordSet.Delete后指针不知去向,所以删之前记下了指针的当前位置,删之后再    将指针移回去。但是用For i = 1 To n - 1        '将指针移动到当前位置即删前的下一条
                              Adodc2.Recordset.MoveNext
                         Next i  移动完,指针位置并没有正确,而是指向了第一条记录,或是第二条记录
    请问为什么会这样啊?您是高手,受点累给小弟看看啊!
      

  9.   

    问题2:您用过vb自带的DataReptor(报表设计器)吗?
          由于表的字段过多,有十多个吧。横着设计报表时,报表页面的宽带部够用啊,能不能修改报表页面的      宽带和高度将报表的页面横过来啊,现在字段过多,设计报表都进行不下去。帮帮忙吧!
        
          还有:报表通过Show方法预览时,页面总是太靠左了,想给它弄到中间去,怎么弄啊?
      

  10.   

    数据库我就是外行了啊,哈哈哈哈哈哈.......API方面的应该还勉强可以打肿脸充充胖子