zoukankan      html  css  js  c++  java
  • 【机房收费系统】—— VB中在MDI主窗体上添加控件

     

    一、问题描述

    最近做到上下机,找不到控制上机的窗体,后来突然发现上机的窗体就是窗体加载时显示在首页的窗体啊,但这些控件貌似是放在MDI主窗体上的。但是——小编惊讶的发现,放不上去!

    二、解决方法

    1、使用PictureBox

    后来发现只有PictureBox控件可以放在主窗体,恰好可以在PictureBox上放控件,但是一运行,小编又惊讶的发现其他的子窗体不见了!后来发现,原来是子窗体跑到了PictureBox的后面,被挡住了!此时可以用API函数来解决这个问题:

    第一步:

    外接程序——外接程序管理器

    第二步:

    找到API函数,选择“在启动中加载”与“加载/卸载”

    第三步:

    选中系统的模块Module1——外接程序——API浏览器——加载文本文件——WIN32API.TXT——打开

    第四步:

    搜索SetParent——添加——插入

    第五步:

    可以看到Module1中出现了这句代码:Public Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

    第六步:

    此时在MDI窗体里在对应的子窗体中写如下代码:运行一下,就会惊喜的发现成功了!

    Private Sub About_Click()
        SetParent FrmAbout.hwnd, Frmmain.hwnd
        FrmAbout.Show
    End Sub

    2.另建一个子窗体

    然后突然想到我的学生信息管理系统,当时为了让学生系统每次都只能显示一个窗体,并且每次打开一个窗体后都自动关闭另一个窗体,但由于报错的原因,主窗体上必须保留一个窗体,所以让一个子窗体一直显示在主窗体的界面,以此达到想要的效果。这样虽然达到了想要的效果,但是我感觉这种方法还是一定的缺陷,欢迎有更好解决办法的小伙伴与小编交流分享!

    三、最后

    为学正如撑上水船,一篙不可放缓!               ——宋•朱熹

  • 相关阅读:
    02_java基础学习_基础语法(上)01_day02总结
    EditPlus如何设置保存时不产生.bak备份文件?
    UltraEdit(UE)如何设置去掉.bak备份文件?
    如何在win10上连接苹果无线键盘
    01_java基础学习_Java概述_day01总结
    Python 提取Twitter tweets中的元素(包括text, screen names, hashtags)
    #leetcode#Path Sum II
    怎样实现广度优先遍历(BFS)
    GCD编程-串行队列与并发队列
    在对方电脑建立IPC连接, 利用IPC$入侵 运行木马
  • 原文地址:https://www.cnblogs.com/txge/p/13973633.html
Copyright © 2011-2022 走看看