zcgw.net
当前位置:首页 >> C#调用外部程序,怎么限制它的子窗口不能移出它的范围 >>

C#调用外部程序,怎么限制它的子窗口不能移出它的范围

用api设置窗体的parent window ,提供几个api给你 ,可以设置窗体的parent,窗体的位置,去掉窗体的边框等,用C#中的Process类可以获取外部程序的主窗体句柄(IntPtr) public const int GWL_STYLE = -16; //public const int WS_VISIBLE = 0x1000...

你看子窗口是什么形式。 模式的是不可以操作的。一定要关了。 如果是非模式,那直接就可以操作。

仅供参考: 1、父窗体Form1中调用子窗体Form2代码: Form2 fr = new Form2(); fr.ShowDialog(this); 2、子窗体的FormClosed事件代码: private void Form2_FormClosed(object sender, FormClosedEventArgs e) { Form1 fr = new Form1(); fr = (F...

using System.Runtime.InteropServices; [DllImport("user32")] public static externint SetParent(int hWndChild, int hWndNewParent); Form2 f2 = new Form2(); f2.MdiParent = this; f2.Show(); SetParent((int)f2.Handle, (int)this.Handle...

把子窗体的MdiParent设置为主窗体即可。 假如主窗体为FrmParent,子窗体为FrmChild FrmChild的构造函数改为 public FrmChild(FrmParent parent) { this.MdiParent=parent; } FrmParent窗体中打开子窗体的语句为 FrmChild frm=new FrmChild(this);...

很简单的,首先你需要在父窗体中定义一个委托 namespace WindowsFormsApplication1{ public delegate void Handled1();//定义一个委托 public partial class Form1 : Form { public Form1() { InitializeComponent(); } //需要子窗体执行的方法 ...

指定弹出的子窗口为模态窗口就可以了,这样在子窗口没有关闭前,是不能操作父窗口的: Form child = new Form(); child.ShowDialog(); 希望对你有帮助,还有疑问请追问或是百度Hi上留言

比如执行保存按钮点击执行的代。如果子窗体是userControl的方式,那就用委托和事件。如果子窗体是form,那就用消息机制。 主窗口应该去执行子窗口的相应的方法,你只要把子窗口中相应的保存方法(显然按钮事件也会调用此方法)声明为public的可...

1、你可以传值到子窗体,但是你子窗体构造函数里面要定义一下,比如: public Form2(string str) { this.Text = str; } 那么你在主窗体中创建子窗体就可以这样: Form2 form2 = new Form2("我是窗体2"); form2.Show(); 值就传过去了。 2、只要不...

简单说下原理吧: 假设A程序以及运行,需要在A中放一个容器(A本身也可以)去存放一会将要运行的B程序。 启动B程序,并获取B程序的句柄,这个需要调用Win32 API,引用如下 [DllImport("user32.dll", EntryPoint = "FindWindow")] public static ...

网站首页 | 网站地图
All rights reserved Powered by www.zcgw.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com