精华内容
下载资源
问答
  • C# Winform 利用线程延时创建子窗体并且可跨线程控制主窗体的控件
  • access窗体设计:创建子窗体

    万次阅读 2014-03-20 19:42:05
    如果要将子窗体链接到主窗体,执行该过程前应确保已与基础记录源建立关联。 当窗体显示在数据透视表视图或数据透视图视图中时,不能向其中添加子窗体。 同时创建窗体与子窗体 在“数据库”窗口中,单击...

    如果要将子窗体链接到主窗体,执行该过程前应确保已与基础记录源建立关联。

    当窗体显示在数据透视表视图或数据透视图视图中时,不能向其中添加子窗体。

    隐藏同时创建窗体与子窗体

    1. “数据库”窗口中,单击“对象”下的“窗体”按钮图像 。
    2. 单击“数据库”窗口工具栏上的“新建”按钮。
    3. 在“新建窗体”对话框中,单击“窗体向导”。

    隐藏如果向导未启动

    这可能是因为 Access 正运行于沙盒模式,但您的计算机上尚未安装 Microsoft Jet 4.0 SP8 或更高版本。启用沙盒模式后,必须安装有 Jet 4.0 SP8 或更高版本,Access 才能完全发挥作用。有关安装 Jet 升级的详细信息,请参阅 Office Online 文章关于 Microsoft Jet 4.0 SP8 或更高版本。有关沙盒模式的详细信息,请参阅 Office Online 文章关于Microsoft Jet Expression Service 沙盒模式

    1. 在第一个向导对话框中,从列表中选择表或查询。例如,若要创建显示子窗体中每一类别产品的“类别”窗体,请选定“类别”表(位于一对多关系的“一”方)。

     注释   先选定哪个表或查询都可以。

    1. 双击要从该表或查询中包括的字段。
    2. 在同一向导对话框中,从列表中选择另一个表或查询。如果还要用同一示例,则选择“产品”表(位于一对多关系的“多”方)。
    3. 双击要从该表或查询中包括的字段。
    4. 如果在启动向导之前已正确设置了关系,则单击“下一步”时,向导会询问以哪一个表或查询来查看。如果还要用同一示例来创建“类别”窗体,则单击“按类别”。
    5. 在同一向导对话框中,选中“带有子窗体的窗体”选项。
    6. 按照其余向导对话框中的指示进行操作。单击“完成”后,Microsoft Access 将同时创建两个窗体,一个是主窗体子窗体控件,另一个则是子窗体。

    隐藏创建子窗体并将其添加到另一个窗体中

    1. “设计”视图中打开要向其中添加子窗体的窗体。
    2. 确保已按下了工具箱中的“控件向导”工具 按钮图像 。
    3. 单击工具箱中的“子窗体/子报表”工具 按钮图像 。
    4. 在窗体上单击要放置子窗体的位置。
    5. 根据向导对话框中的指导完成各步骤。

    隐藏如果向导未启动

    这可能是因为 Access 正运行于沙盒模式,但您的计算机上尚未安装 Microsoft Jet 4.0 SP8 或更高版本。启用沙盒模式后,必须安装有 Jet 4.0 SP8 或更高版本,Access 才能完全发挥作用。有关安装 Jet 升级的详细信息,请参阅 Office Online 文章关于 Microsoft Jet 4.0 SP8 或更高版本。有关沙盒模式的详细信息,请参阅 Office Online 文章关于Microsoft Jet Expression Service 沙盒模式

    1. 单击“完成”后,Microsoft Access 将在窗体中添加一个子窗体控件,并为子窗体创建一个单独的窗体。

    隐藏将窗体添加到另一个窗体中以创建带有子窗体的窗体

    1. “设计”视图中,打开要用作主窗体的窗体。主窗体通常是基于一对多关系中“一”方的表或查询的窗体。
    2. 确保已按下了工具箱中的“控件向导”工具 图像按钮 。
    3. 按 F11 切换到“数据库”窗口
    4. 从“数据库”窗口中将相应的窗体、表或查询拖到主窗体。

    隐藏创建带有两个子窗体的窗体 

    主窗体与第一个子窗体有一对多关系,第一个子窗体又与第二个子窗体有一对多关系,主窗体中含有两个子窗体控件

    1. “数据库”窗口中,单击“对象”下的“窗体”按钮图像 。
    2. 单击“数据库”窗口工具栏上的“新建”。
    3. 在“新建窗体”对话框中,双击列表中的“窗体向导”。

    隐藏如果向导未启动

    这可能是因为 Access 正运行于沙盒模式,但您的计算机上尚未安装 Microsoft Jet 4.0 SP8 或更高版本。启用沙盒模式后,必须安装有 Jet 4.0 SP8 或更高版本,Access 才能完全发挥作用。有关安装 Jet 升级的详细信息,请参阅 Office Online 文章关于 Microsoft Jet 4.0 SP8 或更高版本。有关沙盒模式的详细信息,请参阅 Office Online 文章关于Microsoft Jet Expression Service 沙盒模式

    1. 在第一个向导对话框中,选择用于主窗体的表或查询。例如,假定要创建带有两个子窗体的“客户”窗体,其中一个子窗体为“订单”子窗体,另一个为“订单明细”子窗体,此时请选择“客户”表(第一个一对多关系中的“一”方)。

     注释   无论先选定哪个表或查询都可以。

    1. 双击要从该表或查询中包括的字段。
    2. 在同一个向导对话框中,选择用于第一个子窗体的表或查询。使用同一示例,请选择“订单”表(第一个一对多关系中的“多”方),然后双击要从该表或查询中包括的字段。
    3. 在同一个向导对话框中,选择用于第二个子窗体的表或查询。使用同一示例,请选择“订单明细”表(在第二个一对多关系中的“多”方),然后双击要从该表或查询中包括的字段。
    4. 如果在启动向导前已经正确设置了表的关系,则单击“下一步”后,向导会询问要按哪个表或查询来查看。使用同一示例,要创建“客户”窗体,请单击“按客户”选项。
    5. 在同一向导对话框中,选中“带有子窗体的窗体”选项。
    6. 按照其他向导对话框的指导进行操作。单击“完成”后,Microsoft Access 将创建一个带有两个子窗体控件的主窗体,还将创建另外两个窗体,每个子窗体各一个。

     注释 

    • 用向导创建带有两个子窗体的窗体时,Microsoft Access 将通过给第一个子窗体的“当前”属性附加一个事件过程来同步子窗体。如果要同步同一窗体上更多的子窗体,可以复制和修改这个事件过程。若要查看这个事件过程,请在“设计”视图中打开第一个子窗体,双击窗体选择器,然后单击“当前”属性旁边的“生成”按钮 按钮图像 。
    • “罗斯文”示例数据库中“客户订单”窗体就是一个带有两个子窗体的窗体。若要查看该窗体,请指向“帮助”菜单上的“示例数据库”,单击“‘罗斯文’示例数据库”或“‘罗斯文’示例 Access 项目”,然后在“设计”视图中打开“客户订单”窗体。 

    隐藏创建带有内嵌子窗体的窗体

    主窗体与第一个子窗体有一对多关系,第一个子窗体又与第二个子窗体有一对多关系,第二个子窗体内嵌在第一个子窗体中。

    1. 创建一个带有子窗体的窗体。

    隐藏操作方法:

    1. “数据库”窗口中,单击“对象”下的“窗体”按钮图像 。
    2. 单击“数据库”窗口工具栏上的“新建”按钮。
    3. 在“新建窗体”对话框中,单击“窗体向导”。

    隐藏如果向导未启动

    这可能是因为 Access 正运行于沙盒模式,但您的计算机上尚未安装 Microsoft Jet 4.0 SP8 或更高版本。启用沙盒模式后,必须安装有 Jet 4.0 SP8 或更高版本,Access 才能完全发挥作用。有关安装 Jet 升级的详细信息,请参阅 Office Online 文章关于 Microsoft Jet 4.0 SP8 或更高版本。有关沙盒模式的详细信息,请参阅 Office Online 文章关于 Microsoft Jet Expression Service 沙盒模式

    1. 在第一个向导对话框中,从列表中选择表或查询。例如,若要创建显示子窗体中每一类别产品的“类别”窗体,请选定“类别”表(位于一对多关系的“一”方)。

     注释   先选定哪个表或查询都可以。

    1. 双击要从该表或查询中包括的字段。
    2. 在同一向导对话框中,从列表中选择另一个表或查询。如果还要用同一示例,则选择“产品”表(位于一对多关系的“多”方)。
    3. 双击要从该表或查询中包括的字段。
    4. 如果在启动向导之前已正确设置了关系,则单击“下一步”时,向导会询问以哪一个表或查询来查看。如果还要用同一示例来创建“类别”窗体,则单击“按类别”。
    5. 在同一向导对话框中,选中“带有子窗体的窗体”选项。
    6. 按照其余向导对话框中的指示进行操作。单击“完成”后,Microsoft Access 将同时创建两个窗体,一个是主窗体子窗体控件,另一个则是子窗体。

     注释   当向导询问子窗体需要何种版式时,必须选择“表格”(等效于“窗体”视图)。

    1. 在主窗体的“设计”视图中,选择子窗体控件并再次单击控件的内部以选择窗体,就像从“数据库”窗口的“设计”视图中打开子窗体一样。
    2. 执行下列操作之一:
    • 重复第 1 步以通过向导创建第二个子窗体。
    • 将窗体、表或查询从“数据库”窗口中拖到子窗体中。Microsoft Access 将在第一个子窗体内再创建另一个子窗体,并创建子窗体的窗体。
    展开全文
  • 1、通过主窗体里“修改IP”按键调用一个Dialog, 2、在Dialog里修改IP、端口号, 3、按Dialog里的“保存”按键将参数保存到主窗体里的成员变量。 软件:VS2010 步骤: 1、创建一个新的窗口 在资源视图右键...

    需求分析:

    1、通过主窗体里“修改IP”按键调用一个Dialog,

    2、在Dialog里修改IP、端口号,

    3、按Dialog里的“保存”按键将参数保存到主窗体里的成员变量。

    软件:VS2010

    步骤:

    1、创建一个新的窗口

    在资源视图右键【Dialog】->添加资源,选【Dialog】->新建,定义Dialog的ID,值自定义即可,本例为IDD_SetIPPort,【Dialg】创建完成

    2、为创建的子窗口添加类

    在创建的Dialog窗体上右击添加类,类名自行定义即可,本例类名为CIPPInterface,之后就会生成两个文件IPPInterface.h和.cpp

    3、为子窗体添加控件(IP Address Control),并在IPPInterface.h文件里添加数组

    右键控件->添加成员变量,变量类别为Control,变量名自定义即可,本例为m_ctlIPAddrDesIP

    在IPPInterface.h文件里添加成员变量数组:BYTE m_IP[4];

    4、在主窗口双击“修改IP”按钮,生成点击事件处理函数

    此函数和新建的对话框不在一个类里,需要包含新建类的.h文件:#include "IPPInterface.h"

    void CTestDlg::OnBnClickedButtonSetip()
    {
        // TODO: 在此添加控件通知处理程序代码
        IPPInterface dlg;
        INT_PTR nRet = dlg.DoModal();
        TRACE("nRet = %d\n",nRet);
    }

    5、在主窗体的.h文件里创建一个数组(为存储子窗体传过来的数值)

    int m_aIPAddress[4]; 

    6、为子窗体控件添加初始值,重写函数OnInitDialog()

    右键子窗体->类向导->虚函数->选择OnInitDialog ->添加函数

    添加代码

    BOOL IPPInterface::OnInitDialog()
    {
        CDialogEx::OnInitDialog();

        m_ctlIPAddrDesIP.SetAddress(192,168,0,178);
        return TRUE;  // return TRUE unless you set the focus to a control
    }

    7、为子窗体的“确定”按钮添加点击事件

    void IPPInterface::OnBnClickedOk()
    {
        // TODO: 在此添加控件通知处理程序代码
        CDialogEx::OnOK();
        int nRet = 11;
        CTestDlg *parent=(CTestDlg *)GetParent();
        m_ctlIPAddrDesIP.GetAddress(m_IP[0],m_IP[1],m_IP[2],m_IP[3]);
        parent->m_aIPAddress[0] = m_IP[0];
        parent->m_aIPAddress[1] = m_IP[1];
        parent->m_aIPAddress[2] = m_IP[2];
        parent->m_aIPAddress[3] = m_IP[3];

       EndDialog(nRet);//关闭子窗体

       return;

    }

    完成啦~~

    总结:简单点说就是在父对话框中声明个成员变量来存放你要传递的参数,然后在子对话框里弄个函数将你想传的值赋给那个成员变量

     

     

     

     

     

    展开全文
  • 壹般来说,壹个应用程序是由若干个窗体构成的,通过适当的交互逻辑在不同窗体之间建立起联系。当主窗体不方便直接调用子窗体内部...然后在主窗体从实例化从窗体,并将委托变量从窗体方法关联起来,再调用委托来完成

    窗体之间传递消息并不罕见,实现方式各有不同,今天主要记录下C#当中通过委托(Delegate)实现主窗体向多个子窗体发送消息的简单示例。

    一、原理分析

    C#委托实现主从窗体通信
    壹般来说,壹个应用程序是由若干个窗体构成的,通过适当的交互逻辑在不同窗体之间建立起联系。当主窗体不方便直接调用子窗体内部的方法时,可通过委托的方式来间接调用。只需要子窗体定义壹个满足主窗体声明的委托要求的方法即可。然后在主窗体实例化从窗体,并将委托变量和从窗体方法关联起来,再调用委托来完成!

    二、代码实现

    1、主窗体

    主窗体当中放置两个按钮为计数和重置,按钮事件分别为ClickMe和ResetMe,在此只附上C#代码,XAML布局代码略。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Navigation;
    using System.Windows.Shapes;
    
    namespace DelegateMainFormToSubFormMessage
    {
        //声明委托
        public delegate void MessageShow(string Counter);
        /// <summary>
        /// Interaction logic for MainWindow.xaml
        /// </summary>
        public partial class MainWindow : Window
        {
            //创建委托对象
            public MessageShow messageShow;
            private int counter = 0;
            public MainWindow()
            {
                InitializeComponent();
                //显示子窗体
                SubFormA subFormA = new SubFormA();
                SubFormB subFormB = new SubFormB();
                SubFormC subFormC = new SubFormC();
                subFormA.Show();
                subFormB.Show();
                subFormC.Show();
                this.messageShow += subFormA.Receiver;
                this.messageShow += subFormB.Receiver;
                this.messageShow += subFormC.Receiver;
            }
            //计数按钮事件
            private void ClickMe(object sender, RoutedEventArgs e)
            {
                this.counter++;
                this.messageShow.Invoke(counter.ToString());
            }
            //重置按钮事件
            private void ResetMe(object sender, RoutedEventArgs e)
            {
                this.counter = 0;
                this.messageShow.Invoke("0");
            }
        }
    
    }
    
    
    2、从窗体

    三个子窗体分别为SubFormA、SubFormB、SubFormC,对应的Label控件名称分别为SubFormALabel、SubFormBLabel、SubFormCLabel,都 拥有和委托要求相匹配的Receiver方法(无返回值,方法要求传入壹个string类型参数)如下:

    		//SubFormA
            public void Receiver(string Counter)
            {
                this.SubFormALabel.Content = Counter;
            }
    
    		//SubFormB
            public void Receiver(string Counter)
            {
                this.SubFormBLabel.Content = Counter;
            }
    
    		//SubFormC
            public void Receiver(string Counter)
            {
                this.SubFormCLabel.Content = Counter;
            }
    

    主窗体构造函数当中实例化三个从窗体并显示,点击“计数”按钮,三个从窗体的Label控件接收从主窗体传递过来的值并同步显示;主窗体点击“重置”按钮的时候,将三个从窗体的Label控件的内容设置为字符串“0”。

    三、效果预览

    实现效果
    在WPF当中,不同窗体其本质就是不同的类,只不过不像WinForm那样,WPF程序的每个窗体界面部分交由XAML标签语言来完成,后台程序逻辑还是C#语言,最终将XAML代码和C#代码以“部分类”的方式合并为壹个类。本次代码XAML部分只是简单的拖放按钮和文本控件,没有涉及复杂的布局样式,故不再展示XAML代码。C#代码同样只是简单几行,高手可以略过,只为初学C#的同行在漫长的学习过程中分享壹点知识!

    展开全文
  • 创建MDI窗体

    千次阅读 2014-11-28 11:16:32
    创建MDI窗体时,有3个主要步骤,分别为:创建MDI父窗体、创建MDI子窗体和从父窗体调用子窗体。 1.创建MDI父窗体 创建MDI父窗体的步骤如下。 (1)依次选择“开始”/“所有程序”/“Microsoft Visual Stu

    创建MDI窗体

     (2011-07-01 16:12:31)
    标签: 

    杂谈

     
    创建MDI窗体时,有3个主要步骤,分别为:创建MDI父窗体、创建MDI子窗体和从父窗体调用子窗体。
    1.创建MDI父窗体
    创建MDI父窗体的步骤如下。
    (1)依次选择“开始”/“所有程序”/“Microsoft Visual Studio 2005”/“Microsoft Visual Studio 2005”选项,打开“Visual Studio 2005”开发环境,在“文件”菜单中,选择“新建”/“项目”选项,如图1所示。

    图1  选择“新建”/“项目”选项
    (2)在弹出的如图2所示的“新建项目”对话框中,选择新建“Windows应用程序”选项,然后单击【确定】按钮,新建一个Windows应用程序。

    图2 “新建项目”对话框
    (3)选中Windows应用程序的默认窗体Form1,在“属性窗口”中,将其IsMdiContainer属性设置为True,将该窗体指定为子窗口的多文档界面容器,如图3所示。

    图3  设置窗体的IsMdiContainer属性
    (4)在Form1窗体中添加一个MenuStrip控件,用来从父窗体调用子窗体。设置MenuStrip控件的一个顶级菜单项和一个子菜单项,如图4所示。MDI父窗体的设计即可完成。

    图4  MenuStrip控件菜单项设置
    2.创建MDI子窗体
    MDI子窗体对于多文档界面应用程序来说是至关重要的,因为用户是通过子窗体来与应用程序交互的。创建MDI子窗体的方法如下。
    (1)在“解决方案资源管理器”中选中含有父窗体的Windows应用程序,单击鼠标右键,在弹出的快捷菜单中选择“添加”/“新建项”或“添加”/“Windows窗体”选项,弹出如图5所示的“添加新项”对话框。

    图5 “添加新项”对话框
    (2)在“添加新项”对话框中,选择“Windows窗体”,并在“名称”文本框中给要添加的Windows窗体命名,然后单击【添加】按钮,在当前应用程序中添加一个新的Windows窗体。
    3.从父窗体调用子窗体
    这里以前两节中创建的MDI父窗体和MDI子窗体为例,说明如何从父窗体调用子窗体。选择MDI父窗体中MenuStrip控件的“打开子窗体”菜单项,触发其Click事件,并在该事件下添加如下代码:
     创建MDI窗体
    创建MDI窗体时,有3个主要步骤,分别为:创建MDI父窗体、创建MDI子窗体和从父窗体调用子窗体。
    1.创建MDI父窗体
    创建MDI父窗体的步骤如下。
    (1)依次选择“开始”/“所有程序”/“Microsoft Visual Studio 2005”/“Microsoft Visual Studio 2005”选项,打开“Visual Studio 2005”开发环境,在“文件”菜单中,选择“新建”/“项目”选项,如图1所示。
    图1  选择“新建”/“项目”选项
    (2)在弹出的如图2所示的“新建项目”对话框中,选择新建“Windows应用程序”选项,然后单击【确定】按钮,新建一个Windows应用程序。
    图2 “新建项目”对话框
    (3)选中Windows应用程序的默认窗体Form1,在“属性窗口”中,将其IsMdiContainer属性设置为True,将该窗体指定为子窗口的多文档界面容器,如图3所示。
    图3  设置窗体的IsMdiContainer属性
    (4)在Form1窗体中添加一个MenuStrip控件,用来从父窗体调用子窗体。设置MenuStrip控件的一个顶级菜单项和一个子菜单项,如图4所示。MDI父窗体的设计即可完成。
    图4  MenuStrip控件菜单项设置
    2.创建MDI子窗体
    MDI子窗体对于多文档界面应用程序来说是至关重要的,因为用户是通过子窗体来与应用程序交互的。创建MDI子窗体的方法如下。
    (1)在“解决方案资源管理器”中选中含有父窗体的Windows应用程序,单击鼠标右键,在弹出的快捷菜单中选择“添加”/“新建项”或“添加”/“Windows窗体”选项,弹出如图5所示的“添加新项”对话框。
    图5 “添加新项”对话框
    (2)在“添加新项”对话框中,选择“Windows窗体”,并在“名称”文本框中给要添加的Windows窗体命名,然后单击【添加】按钮,在当前应用程序中添加一个新的Windows窗体。
    3.从父窗体调用子窗体
    这里以前两节中创建的MDI父窗体和MDI子窗体为例,说明如何从父窗体调用子窗体。选择MDI父窗体中MenuStrip控件的“打开子窗体”菜单项,触发其Click事件,并在该事件下添加如下代码:
    private void 打开子窗体ToolStripMenuItem_Click(object sender, EventArgs e)
    {
    Form2 frmchild = new Form2();
    frmchild.MdiParent = this;
    frmchild.Show();
    }
    完成上述操作后,运行Windows应用程序,当用户单击“打开子窗体”菜单项时,程序就会创建一个新的多文档界面子窗体。
    展开全文
  • 第1步,创建项目。在Form1窗体增加一个按钮,打开Form2窗体使用。(第4步是重点) private void button1_Click(object sender, EventArgs e) { Form2 form2 = new Form2(); form2.Show(); } 第2步,在Form2...
  • 首先在MDI的主窗体中: 1.  在主窗体构造函数中,添加如下代码,注意要在InitializeComponent调用之后,如:   //Add File Menu   MenuItem miFile = mnuMain.MenuItems.Add("&File");
  • 创建窗体

    千次阅读 2010-05-23 00:16:00
    而VC++中提供了丰富的类库,用于创建Windows窗体应用程序。 我们一般可以通过CFreameWnd类中的Create()方法来创建一个窗体,Create()函数的定义如下:BOOL Create(LPCTSTR lpszClassName, LPCTSTR l
  • 网格中开启快速创建窗体的方法很简单,把lookup关联字段属性设置为业务必须,在实体属性界面开启快速创建,自定义实体如果没有快速创建窗体新建一个即可,完成上诉步骤后,点击网格上的加号即可打开实体快速...
  • 将窗体从属于主窗体

    千次阅读 2006-12-21 19:03:00
    VCL使得创建和显示从属窗体都易如反掌。但不是所有程序都适于采用 无模式窗体,有些程序需要在一个主窗体内显示不同的内容。本文讨论如何将一个从属窗体 “寄居”于主窗体中,从属窗体看上去是主窗体的一部分,...
  • 设置QT的窗体、子窗体背景透明

    千次阅读 2019-04-10 15:27:21
    设置QT的窗体、子窗体背景透明度以及不同控件...主窗体构造函数主要创建了这两个窗体 pa = new sonA(this); pa->show(); m_pwidget = new widget(this); m_pwidget->show(); setStyleSheet("QWidget#...
  • 设置界面背景图片 1.首先准备两张Windows24位BMP(后缀为.bmp)的图片,找到创建的工程目录下的res文件夹,将图片复制粘贴到res文件夹下。 这里以美丽的精灵公主–丽芙·泰勒为背景。 这里以Photoshop为工具...
  • vc创建窗体

    千次阅读 2008-10-07 10:22:00
    开始VC之路--创建窗体 第一讲 用Create()方法新建一个窗体应用程序 一般来讲,大多数Windows应用程序的界面都是由一个或数个窗体构成。而VC++中提供了丰富的类库,用于创建Windows窗体应用程序。 我们一般可以...
  • Qt入门学习之主窗体类QMainWindow

    千次阅读 2019-03-20 17:13:23
    1. 主窗体类QMainWindow简介 QMainWindow是 Qt 框架带来的一个预定义好的主窗口类。所谓主窗口,就是一个普通意义上的应用程序(不是指游戏之类的那种)最顶层的...2. 依托主窗体创建项目,并在主窗体中进行菜...
  • 主窗体耗时方法体内调用,弹出进度窗体。调用4步骤 1.ProgressBarService.CreateBarForm("计划导出", "数据就绪,准备导出数据...", count); //创建进度窗口并写入提示文字 2.ProgressBarService....
  • VCL使得创建和显示从属窗体都易如反掌。但不是所有程序都适于采用无模式窗体,有些程序需要在一个主窗体内显示不同的内容。本文讨论如何将一个从属窗体“寄居”于主窗体中,从属窗体看上去是主窗体的一部分,用户...
  • 网摘》窗体、子窗体

    千次阅读 2014-01-31 22:49:19
    VB6 MDI窗体 控件 其实Picture做为MDI窗体最佳容器,在设计MDI程序时,还是被很多程序员采用的方法。 1.建立MDI窗体;[工程]\[添加  MDI 窗体]  2.在MDI窗体上方画一个Picture1,因为Picture的Align默认是停靠在...
  • 上次提到创建数据表业务表,这都是为创建智能窗体做准备,但也是不可缺少的一部分。现在,讲讲如何创建智能窗体。 一、概念及用途  概念:智能窗体,智能表现在代码少,操作方便,智能识别,智能提示等方面,...
  •  新创建的响应窗体是由线程创建的,而.net平台下,子线程执行完毕后,会自动释放资源,同样的,这个新创建窗体也会被释放掉。若是这个线程处于监听或者一些其他的连续执行状态,那么,这个窗体就会出现
  • 在C#中创建进度窗体

    2012-11-30 13:39:00
    我们在设计Winform应用程序时,难免会遇到很多情况...这里,我介绍一种方法,通过使用BackgroundWorker组件创建一个相应的进度窗体来改善用户体验。   步骤一: 先在程序中编写一个函数,用于模拟一个比较耗...
  • 父窗体创建一个子窗体,当子窗体关闭时,想传递参数回复窗体时,需要用到的...1.父窗体创建子窗体: Dialog dialog = new Dialog(); dialog.StartPosition = FormStartPosition.CenterParent;//居中 dialog.ge
  • DataGridView 控件的一种最常见方案是“/详细信息”窗体,这样的窗体可显示两个数据库表之间的父/关系。如果选择表中的行,将导致以相应的数据来更新详细信息表。 /详细信息窗体很容易实现,这需要使用 ...
  • 分割视图的创建大体上分为两个步骤:其一是创建分割窗体;然后就是处理鼠标键盘等消息。 创建分割窗体 MFC提供分割窗体类CsplitterWnd,它提供了很多对于分割窗体操作的成员函数,每一个分割窗体都是一个...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,800
精华内容 5,520
关键字:

创建主窗体和子窗体必须完成