VB程序员博客
01 12th, 2010
vb 改变其他程序窗体大小
及 去掉其他程序窗体在任务栏上的按钮
API 看看
先获得程序窗体句柄,然后再做其他操作。
<
FindWindow()
MoveWindow()
<
<
<
<
楼上的几位说 思路 没人批评 只能让楼主在瞎摸瞎等
给代码的人 又要挨批 我宁可坐着看热闹….. 因为有人大张旗鼓 渔 与 鱼
妇人之见 俺莫可奈何, 但我还是有一句话 两个字 痛心
<
lStyle = lStyle And Not WS_EX_APPWINDOW
lStyle = lStyle And Not WS_EX_WINDOWEDGE
试了很多次都没能成功,不知道问题出在哪
用NirCmd命令行工具
http://www.nirsoft.net
01 2nd, 2010
建了一个表“XX”有A、B、C、D字段,A字段是一个独一无二的编号
另一个表“YY”有A、B、C、D、E、F、G、H字段
新建一个窗体,这个窗体录入结果保存到“YY”表中,窗体中的控件有A、B、C、D、E、F、G、H
实现窗体中:输入A字段中的独一无二的编号后,窗体中B、C、D控件就自动跳出XX表中字段的内容,然后依次输入E、F、G、H的内容,保存结果进入“YY”表中。
请教高手指点…
在哪里输入啊???自己顶
表XX和表YY的A/B/C/D字段的内容和值完全一样么?
如果表XX和表YY的A/B/C/D字段的内容和值完全一样,那么你现在这样设计表结构是冗余太多,容易带来问题。
应该
(1)把表YY中的B, C, D字段都删掉,把表XX的A字段和表YY的A字段关联。
(2)新建ACCESS窗体时,数据源直接从表XX和表YY的JOIN查询得到,这样你的要求就可以自动满足。
A控件change事件不断刷新;或者A控件失去焦点时查XX表,分别给BCD赋值。
<
你可以把你的报表的记录源也改成来自XX和YY的联合查询。
在B、C、D控件中输入“DLookUp”函数如下:
=DLookUp("[被引用的字段名称,即B]","[被引用的表名称,即XX]","[被引用的表中的条件字段,即A]='" & Forms![所属窗体名称]![保存结果的表中的条件字段,即YY表中的A字段名称] & "'")
12 24th, 2009
如题,本人先提供一个美化VB窗体的代码,希望大家一起交流。
VB可以产生四边形以外其他形状的Form
Private Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Private Sub Form_Load()
Dim lReturn As Long
Me.Show
lReturn = SetWindowRgn(hWnd, CreateEllipticRgn(10, 10, 340, 150), True)
End Sub
需要实例可到下面的网址下载:
http://download.csdn.net/source/1849907
学习
up
界面设计说起来简单,其实做起来就不那么容易了。顶楼主一个!
我的方案很变态,我基本上是用webbrowser做界面的….不用本身的控件,这样的效果好写
.net的wpf的应用也是借鉴了这类的方案
VB主要做点应用,要求美观用别的开发工具好了,或者借助别的工具
异形窗体,vb可以做出各种各样的异形窗体,如:宠物形,中空形等等
VB没皮肤的吗?公司好像做图片设计,呵呵
<
<
希望大家继续交流,多多益善!
up
flash + html 开发的界面
<
窗体 关键色 透明 就ok了
GDI…
大家来交流啊
<
偶只会做‘古典’的窗体…………..
学习
希望各位多多提供实例
up
User Interface is Important.
Windows程序的界面有专门的美化软件,比如stylexp
对于vb皮肤的应用不是很懂
<
看看我这个效果如何?

友情 UP中。。。。
<
来弄分的
<
<
不错!值得学习
大家都来关心一下,此贴不能沉下去!
http://topic.csdn.net/u/20091209/22/7e601de4-c531-46a7-94db-56e251f918ba.html?68190
参考 此帖
哦,顶下
喜欢做界面….
UP
<
为了省事可以直接用皮肤控件
12 24th, 2009
如题,本人先提供一个美化VB窗体的代码,希望大家一起交流。
VB可以产生四边形以外其他形状的Form
Private Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Private Sub Form_Load()
Dim lReturn As Long
Me.Show
lReturn = SetWindowRgn(hWnd, CreateEllipticRgn(10, 10, 340, 150), True)
End Sub
需要实例可到下面的网址下载:
http://download.csdn.net/source/1849907
学习
up
界面设计说起来简单,其实做起来就不那么容易了。顶楼主一个!
我的方案很变态,我基本上是用webbrowser做界面的….不用本身的控件,这样的效果好写
.net的wpf的应用也是借鉴了这类的方案
VB主要做点应用,要求美观用别的开发工具好了,或者借助别的工具
异形窗体,vb可以做出各种各样的异形窗体,如:宠物形,中空形等等
VB没皮肤的吗?公司好像做图片设计,呵呵
<
<
希望大家继续交流,多多益善!
up
flash + html 开发的界面
<
窗体 关键色 透明 就ok了
GDI…
大家来交流啊
<
偶只会做‘古典’的窗体…………..
学习
希望各位多多提供实例
up
User Interface is Important.
Windows程序的界面有专门的美化软件,比如stylexp
对于vb皮肤的应用不是很懂
<
看看我这个效果如何?

友情 UP中。。。。
<
来弄分的
<
<
不错!值得学习
大家都来关心一下,此贴不能沉下去!
http://topic.csdn.net/u/20091209/22/7e601de4-c531-46a7-94db-56e251f918ba.html?68190
参考 此帖
哦,顶下
喜欢做界面….
UP
<
为了省事可以直接用皮肤控件
12 23rd, 2009
如题,
如何实现
万一背景视频中也出现和前景控件一样的图像,用户点哪个?
或者背景视频太花哨,用户找不到前景上的控件怎么办?
把视频控件放下面其它放上面就行
2楼 asftrhgjhkjlkttttttt
请你详细说下,怎么把视频放在 Picture 上
12 12th, 2009
在父窗体中,如何把无模式的两个子窗体改为有模式的,即在关闭其中一个子窗体前,另一个不可用
其实,模式窗体就是将窗体2设置为窗体1的子窗体,并且禁用窗体1。
可是,在父窗体中可以放另一个父窗体吗?
<
可以将某个窗体置前,用api函数SetWindowPos
Private Declare Function SetWindowPos Lib "user32" _
(ByVal hWnd As Long, ByVal hWndInsertAfter As Long, _
ByVal X As Long, ByVal Y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFlags As Long) As Long
<
<
11 26th, 2009
比如我在Tab(0)页上查询得到一组数据,又在Tab(1)页上查询得到一组数据,如果我现在的焦点是在Tab(1)上,使用ReShow(刷新),那Tab(0)和Tab(1)上的数据都会复原到初始状态吗?请教大家
什么控件?
ReShow?
ReShow不是控件,就是自己写的一个过程,这个过程相当于窗体的Load事件
ReShow可以理解成是刷新的意思,呵呵
应该可以的,试试看不就是知道了
<
11 26th, 2009
比如我在Tab(0)页上查询得到一组数据,又在Tab(1)页上查询得到一组数据,如果我现在的焦点是在Tab(1)上,使用ReShow(刷新),那Tab(0)和Tab(1)上的数据都会复原到初始状态吗?请教大家
什么控件?
ReShow?
ReShow不是控件,就是自己写的一个过程,这个过程相当于窗体的Load事件
ReShow可以理解成是刷新的意思,呵呵
应该可以的,试试看不就是知道了
<
11 25th, 2009
vb界面风格是根据系统主题风格而改变的,我想把vb某工程的所有窗体界面都应用一种系统主题风格不变,就是在以后不管在哪台机器上安装,界面风格都是那个,不会随系统主题的改变而变化。请问能实现吗?确切一点说:就是想把界面只作成某一系统主题的风格,而且不会再改变的。
用vb开发软件时,改变系统的主题,所有窗体就界面也跟着改变,发布以后,还会跟着变吗?
窗体的BorderStyle=0,标题栏、控制图标和按钮自己设计。
http://topic.csdn.net/u/20090303/02/fb11597e-66af-4f65-adb1-91014add689a.html
界面这块,说来话长啊!~~~
[size=12px]vb界面风格是根据系统主题风格而改变的,我想把vb某工程的所有窗体界面都应用一种系统主题风格不变,就是在以后不管在哪台机器上安装,界面风格都是那个,不会随系统主题的改变而变化。请问能实现吗?确切一点说:就是想把界面只作成某一系统主题的风格,而且不会再改变的。
用vb开发软件时,改变系统的主题,所有窗体就界面也跟着改变,发布以后,还会跟着变吗? [/size]
直接点说:我很看好xp系统的 年韵2006 这个主题,很想将其应用到我开发的程序上,并且不会再随着系统主题的变化而变化。就像瑞星那样,不管系统主题咋变,它的界面都不不变。
望诸位行家指点迷津!
用Skin++换肤
http://www.uipower.com/
自己做个这样的界面,不使用系统外观样式.
老马您好:我在您博客下了Xtreme Suite Pro ActiveX 安装完用了,的确挺好的。但仍有问题啊:
用了该控件后,菜单却不见了。请问是什么问题啊?另外,怎么将其打包到安装程序发布?请指教!
<
用了该控件后,菜单却不见了。请问是什么问题啊?另外,怎么将其打包到安装程序发布?请指教!
连马兄都解决不了这个问题,看来没戏了。想知道像8楼那样回帖怎么弄,人多了说话有点乱,不知道和谁说呢。毕竟是新注册的,对论坛的功能一知半解。
打包的问题:
工程文件的目录为 E:废品\废品软件设计.vbp 工程的所有窗体、模块等都在 E:废品目录下
数据库文件目录为 E:废品\DataBasefeipin.mdb
图片文件目录为 E:废品\Images
SkinFramework的样式文件目录为 E:废品\Skill
打包时应该怎么弄啊?请指教啊,最后详细点。这些打不进去,安装完使用时会找不到文件的。
我那天试着打包,结果就没把DataBase Images Skill打进去,便提示找不到文件,故问问您。
另外能给我介绍几个好用的打包软件吗?vb自带的不太好。
马兄:还得请教您一个问题,关于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 移动完,指针位置并没有正确,而是指向了第一条记录,或是第二条记录
请问为什么会这样啊?您是高手,受点累给小弟看看啊!
问题2:您用过vb自带的DataReptor(报表设计器)吗?
由于表的字段过多,有十多个吧。横着设计报表时,报表页面的宽带部够用啊,能不能修改报表页面的
宽带和高度将报表的页面横过来啊,现在字段过多,设计报表都进行不下去。帮帮忙吧!
还有:报表通过Show方法预览时,页面总是太靠左了,想给它弄到中间去,怎么弄啊?
数据库我就是外行了啊,哈哈哈哈哈哈…….API方面的应该还勉强可以打肿脸充充胖子
这三个问题应该有能解决的吧?
11 24th, 2009
vb界面风格是根据系统主题风格而改变的,我想把vb某工程的所有窗体界面都应用一种系统主题风格不变,就是在以后不管在哪台机器上安装,界面风格都是那个,不会随系统主题的改变而变化。请问能实现吗?确切一点说:就是想把界面只作成某一系统主题的风格,而且不会再改变的。
用vb开发软件时,改变系统的主题,所有窗体就界面也跟着改变,发布以后,还会跟着变吗?
窗体的BorderStyle=0,标题栏、控制图标和按钮自己设计。
http://topic.csdn.net/u/20090303/02/fb11597e-66af-4f65-adb1-91014add689a.html
界面这块,说来话长啊!~~~
[size=12px]vb界面风格是根据系统主题风格而改变的,我想把vb某工程的所有窗体界面都应用一种系统主题风格不变,就是在以后不管在哪台机器上安装,界面风格都是那个,不会随系统主题的改变而变化。请问能实现吗?确切一点说:就是想把界面只作成某一系统主题的风格,而且不会再改变的。
用vb开发软件时,改变系统的主题,所有窗体就界面也跟着改变,发布以后,还会跟着变吗? [/size]
直接点说:我很看好xp系统的 年韵2006 这个主题,很想将其应用到我开发的程序上,并且不会再随着系统主题的变化而变化。就像瑞星那样,不管系统主题咋变,它的界面都不不变。
望诸位行家指点迷津!
用Skin++换肤
http://www.uipower.com/
自己做个这样的界面,不使用系统外观样式.
老马您好:我在您博客下了Xtreme Suite Pro ActiveX 安装完用了,的确挺好的。但仍有问题啊:
用了该控件后,菜单却不见了。请问是什么问题啊?另外,怎么将其打包到安装程序发布?请指教!
<
用了该控件后,菜单却不见了。请问是什么问题啊?另外,怎么将其打包到安装程序发布?请指教!
连马兄都解决不了这个问题,看来没戏了。想知道像8楼那样回帖怎么弄,人多了说话有点乱,不知道和谁说呢。毕竟是新注册的,对论坛的功能一知半解。
打包的问题:
工程文件的目录为 E:废品\废品软件设计.vbp 工程的所有窗体、模块等都在 E:废品目录下
数据库文件目录为 E:废品\DataBasefeipin.mdb
图片文件目录为 E:废品\Images
SkinFramework的样式文件目录为 E:废品\Skill
打包时应该怎么弄啊?请指教啊,最后详细点。这些打不进去,安装完使用时会找不到文件的。
我那天试着打包,结果就没把DataBase Images Skill打进去,便提示找不到文件,故问问您。
另外能给我介绍几个好用的打包软件吗?vb自带的不太好。
马兄:还得请教您一个问题,关于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 移动完,指针位置并没有正确,而是指向了第一条记录,或是第二条记录
请问为什么会这样啊?您是高手,受点累给小弟看看啊!
问题2:您用过vb自带的DataReptor(报表设计器)吗?
由于表的字段过多,有十多个吧。横着设计报表时,报表页面的宽带部够用啊,能不能修改报表页面的
宽带和高度将报表的页面横过来啊,现在字段过多,设计报表都进行不下去。帮帮忙吧!
还有:报表通过Show方法预览时,页面总是太靠左了,想给它弄到中间去,怎么弄啊?