• 【机房收费系统】—— 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.另建一个子窗体

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

    三、最后

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

  • 相关阅读:
    MYSQL导入,导出命令。
    MySQL修改,表结构大幅修改
    Ajax
    js和jQuery的日常
    freemarker 分页取值
    Timer定时任务
    汉字相似度比较
    读取Properties键值对
    Python+requests+unittest+excel实现接口自动化测试框架
    Android App 压力测试方法(Monkey)
  • 原文地址:https://www.cnblogs.com/txge/p/13973633.html
Copyright © 2020-2023  润新知