VB中子类vb处理excel技术问题

(window.slotbydup=window.slotbydup || []).push({
id: '2081942',
container: s,
size: '1000,60',
display: 'inlay-fix'> 怎么在VB中捕获一个窗口的Z坐标顺序被改变子类(比如像VC中的OnWindowPosChanged)
怎么在VB中捕获一个窗口的Z坐标顺序被改变子类(比如像VC中的OnWindowPosChanged)
millercui & &
发布时间: & &
浏览:3 & &
回复:1 & &
悬赏:0.0希赛币
如何在VB中捕获一个窗口的Z坐标顺序被改变子类(比如像VC中的OnWindowPosChanged)?如何在VB中捕获一个窗口的Z坐标顺序被改变子类(比如像VC中的OnWindowPosChanged)?
子类处理你的窗口,然后拦截WM_WINDOWPOSCHANGED消息就可以了milo16 & &
20:05:12 & &
& & (0)(0)引用
本问题标题:
本问题地址:
温馨提示:本问答中心的任何言论仅代表发言者个人的观点,与希赛网立场无关。请对您的言论负责,遵守中华人民共和国有关法律、法规。如果您的言论违反希赛网问答中心的规则,将会被删除。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&天极传媒:天极网全国分站
您现在的位置: &&
VB的子类处理应用两例
yesky 10:12
  DefWindowProc函数调用默认的窗口函数对消息进行处理,并返回消息处理的指定返回值。  Declare Function DefWindowProc Lib“user32"Alias “DefWindowProcA"(ByValhwnd As Long,ByVal wMsg As Long,ByVal wParam As Interger,ByVal lParam As Long)As Long  CallWindowProc函数传递消息到指定的窗口函数(窗口函数地址由lpPrevWndFunc参数给定),并返回消息处理的指定返回值。  Public Declare 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  Public proroc As Long  Public Const WM_NCHITTEST=&H84  Public Const HTCAPTION=2  Public Const HTCLIENT=1  Public Const GWL_WNDPROC=(-4)  回调函数WindowProc结构如下,共有四个参数,第一个参数是窗口句柄,第二个参数是消息编号,第三、四个参数是32位整数,它们根据不同的消息而不同。  本例中,当在窗口内进行了一个按下或松开的操作时,WINDOWS会向窗口发出一条WM_NCHITTEST消息(该消息用于判断窗口的非客户区域的什么部分包含了鼠标指针),回调函数在收到WM_NCHITTEST消息后,首先调用窗口的默认函数进行处理,然后判断返回值,如果是HTCLIENT(表示鼠标指针在客户区内),就改变它,使之返回HTCAPTION(表示鼠标指针在标题栏内),这样,当我们在窗口的客户区内按住鼠标移动时,窗口就会傻呼呼地以为按在了标题框内,当然就跟着我们的鼠标动了。  Function WindowProc(ByVal hwnd As Long, ByVal msg As Long,ByVal wParam As Long,ByVal lParam As Long)As Long  Dim rv As Long  If msg=WM_NCHITTEST Then  rv=DefWindowProc(hwnd,msg,wParam,lParam)  If rv=HTCLIENT Then  WindowProc=HTCAPTION  Else  WindowProc=rv  End If  将其他的消息传递给默认的窗口函数进行处理。  Else  WindowProc=CallWindowProc(proroc,hwnd,msg,wParam,lParam)  End If  在Forml内输入如下代码:  Private Sub Form_load()  proroc=SetWindowLong(hwnd,GWL_WNDPROC,AddressOf WindowProc)  End Sub  一定要记得在窗口卸载之前恢复默认的窗口函数,否则……您试一试就知道了。  Private Sub Form_Unload(Cancel As Integer)  Dim rv As Long  rv=SetWindowLong(hwnd,GWL_WNDPROC,proroc)End Sub
(作者:丁勇责任编辑:)
欢迎在新浪微博上关注我们
笔记本手机数码家电子类重写父类属性的有关问题。求解惑
子类重写父类属性的问题。。。。求解惑
&&&&class&Employer&br&
&&&&&&&&protected&$sal=3000;&br&
&&&&&&&&public&function&getSal()&br&
&&&&&&&&{&br&
&&&&&&&&&&&&return&$this-&&br&
&&&&&&&&}&br&
&&&&&&&&&br&
&&&&class&Manager&extends&Employer&br&
&&&&&&&&protected&$sal=5000;&br&
&&&&&&&&public&function&getParentSal()&br&
&&&&&&&&{&br&
&&&&&&&&&&&&return&parent::getSal();&
&&&&&&&&}&br&
&&&&&&&&public&function&getSal()&br&
&&&&&&&&{&br&
&&&&&&&&&&&&return&$this-&&br&
&&&&&&&&}&br&
&&&&$manager&=&new&M&br&
&&&&echo&$manager-&getParentSal().PHP_EOL;
&&&&echo&$manager-&getSal();
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'java中,子类继承父类之后,覆盖了原有方法,那么调用新的方法的时候,二者都调用吗?_百度知道
java中,子类继承父类之后,覆盖了原有方法,那么调用新的方法的时候,二者都调用吗?
).println(&quot.&quotclass Car extends Vehicle {
public Car() {
System.println(&quot.).println(&);Car is driven&的结果是A new Vehicle.); Bus vb = new Bus();
public void drive() {
System.println(&quot.A new Bus: Vehicle vc = new Car();Vehicle is braked&quot.
public void drive() {
System。;A new C);
public Vehicle() {
System.println(&quot.);
public void drive() {
public static void brake() {
System.println(&A new Bus.A new V
public static void brake() {
S的结果是A new Vehicle.&Car is braked&
public class Vehicle {
class Bus extends Vehicle {
public Bus() {
SA new Vehicle.out.out.A new Car.out.println(&quot.&Bus is driven&Vehicle is driven&quot.out..这个还可以理解;);
} 对上边的这个程序, 运行下边两个语句;
Bus vb = new Bus()。但是为什么 Vehicle vc = new Car();).println(&quot
提问者采纳
public static void brake() {
SVehicle is braked&quot.println(&quot。class Car extends Vehicle {
public Car() {
System把Bus类定义到Vehicle类外面;).println(&).println(&quot.
public void drive() {
System.out,这样运行就对了.out.);
} } class Bus extends Vehicle { public Bus() {
System.println(&quot.&A new Car.println(&quot.& } }
class Vehicle {
public Vehicle() {
System. } public void drive() {
System.println(&A new Vehicle.&quot.out.println(&Bus is driven&} }
class Test{
public static void main(String[] args){
Vehicle vc = new Car().println(&Car is driven&Car is braked&);A new B
public static void brake() {
Bus vb = new Bus();Vehicle is driven&).);
public void drive() {
bus那个放在里边也可以编译通过的说。。话说放在里边和外边有什么不同呀?觉得放在里边怪怪的。。。不过也没报错…………又话说为什么Vehicle vc = new Car()可以编译通过呢?是不是所有的父类子类都可以这样定义?
Vehicle vc = new Car()这个是java的多态,这样定义当然对了。所有的父类子类都可以。
提问者评价
哦。。谢谢。。我的问题就是在Vehicle vc = new Car()这句上
其他类似问题
为您推荐:
其他1条回答
构造方法和普通方法不一样,构造方法在创建对象时候调用,而子类的构造方法中会自动调用父类的构造方法。
额,我发现我看错了, Vehicle vc = new Car()输出是A new Vehicle.A new Car.没有调用两次。。。话说为什么Vehicle vc = new Car()可以编译通过呢?是不是所有的父类子类都可以这样定义?
java的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 vb处理excel 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信