为什么子窗体在SHOW时会出现创建窗体句柄出错 为什么子窗体在SHOW时会出现创建窗体句柄出错Issue.MdiParent = this;Issue.Dock = DockStyle.Fill;Issue.Show(); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 IntPtr MainHandle; Message MainMessge; frmIssue Issue; frmLogout Logout; frmICAdd ICAdd; public frmICOpr(IntPtr HandleTmp) { InitializeComponent(); MainHandle = HandleTmp; Global.SysPara.ShowOne.IsICOpr = true; } public frmICOpr(System.Windows.Forms.Message m,IntPtr HandleTmp) { InitializeComponent(); MainMessge = m; MainHandle = HandleTmp; Global.SysPara.ShowOne.IsICOpr = true; } private void frmICOpr_Load(object sender, EventArgs e) { TAdo AdoPort; ICOprs.eICOpr eOrder; eOrder = ICOprs.eICOpr.eNone; Global.UnregisterHotKey(MainHandle, Global.HOTKEYF2); Global.UnregisterHotKey(MainHandle, Global.HOTKEYF3); Global.UnregisterHotKey(MainHandle, Global.HOTKEYF4); Global.UnregisterHotKey(MainHandle, Global.HOTKEYF5); Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF2, 0, Global.VK_F2); Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF3, 0, Global.VK_F3); Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF4, 0, Global.VK_F4); Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF5, 0, Global.VK_F5); AdoPort = new TAdo(Global.SysPara.sDataSrc, "Manage10", Global.SysPara.sUser, Global.SysPara.sKey); if (Global.SysPara.tOper.IsIssue || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabIssue.Visible = true; //Issue = new frmIssue(); } if (Global.SysPara.tOper.IsLogOut || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabLogOut.Visible = true; Logout = new frmLogout(); } if (Global.SysPara.tOper.IsCAddMoney || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabAddMoney.Visible = true; //ICAdd = new frmICAdd(); } if (Global.SysPara.tOper.IsFunCard || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabIssueFun.Visible = true; } if (Global.SysPara.tOper.IsNightCard || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabIssueNight.Visible = true; } if (Global.SysPara.tOper.IsLost || Global.SysPara.tOper.IsReissue || Global.SysPara.tOper.IsBackMoney || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabLoss.Visible = true; } if (Global.SysPara.tOper.IsCancelLost || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabCancelLoss.Visible = true; } if (Global.SysPara.tOper.IsRoam || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabRoam.Visible = true; } if (Global.SysPara.tOper.IsCardRise || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabCardRise.Visible = true; } if (Global.SysPara.tOper.IsAutoRise || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss) { TabAutoRise.Visible = true; } if (TabIssue.Visible) { eOrder = ICOprs.eICOpr.Issue; TabICOPr.SelectedTab = TabIssue; TabIssue_Click(sender, e); } else if (TabLogOut.Visible) { eOrder = ICOprs.eICOpr.LogOut; TabICOPr.SelectedTab = TabLogOut; } else if (TabAddMoney.Visible) { eOrder = ICOprs.eICOpr.AddMoney; TabICOPr.SelectedTab = TabAddMoney; } else if (TabIssueFun.Visible) { eOrder = ICOprs.eICOpr.IssueFun; TabICOPr.SelectedTab = TabIssueFun; } else if (TabIssueNight.Visible) { eOrder = ICOprs.eICOpr.IssueNight; TabICOPr.SelectedTab = TabIssueNight; } else if (TabLoss.Visible) { eOrder = ICOprs.eICOpr.Loss; TabICOPr.SelectedTab = TabLoss; } else if (TabCancelLoss.Visible) { eOrder = ICOprs.eICOpr.CancelLost; TabICOPr.SelectedTab = TabCancelLoss; } else if (TabRoam.Visible) { eOrder = ICOprs.eICOpr.Roam; TabICOPr.SelectedTab = TabRoam; } else if (TabCardRise.Visible) { eOrder = ICOprs.eICOpr.CardRise; TabICOPr.SelectedTab = TabCardRise; } else if (TabAutoRise.Visible) { eOrder = ICOprs.eICOpr.AutoRise; TabICOPr.SelectedTab = TabAutoRise; } else if (TabIDBand.Visible) { eOrder = ICOprs.eICOpr.IDBand; TabICOPr.SelectedTab = TabIDBand; } if (MainMessge.HWnd.ToInt32() != 0) { DefWndProc(ref MainMessge); } } private void frmICOpr_FormClosing(object sender, FormClosingEventArgs e) { if (MainHandle.ToInt32() != 0) { Global.UnregisterHotKey(this.Handle, Global.HOTKEYF2); Global.UnregisterHotKey(this.Handle, Global.HOTKEYF3); Global.UnregisterHotKey(this.Handle, Global.HOTKEYF4); Global.UnregisterHotKey(this.Handle, Global.HOTKEYF5); Global.SendMessage(MainHandle.ToInt32(), Global.WM_CLOSEICPOR, 0, 0); Global.SendMessage(MainHandle.ToInt32(), Global.WM_BANDDING, 0, 0); } Global.SysPara.ShowOne.IsICOpr = false; ICOpr.CloseCom(); } private void ChkHide() { Issue.Hide(); //Logout.Hide(); //ICAdd.Hide(); } //private bool GetInstanceState(string name) //{ // int l = this.MdiChildren.Length; // for (int i = 0; i < l; i++) // { // if (this.MdiChildren[i].Name == name) // { // this.MdiChildren[i].Focus(); // return true; // } // } // return false; //} private void TabIssue_Click(object sender, EventArgs e) { try { //ChkHide(); //Issue = new frmIssue(); //Issue.MdiParent = this; //Issue.Dock = DockStyle.Fill; //Issue.Show(); } catch(Exception err) { MessageBox.Show(err.Message); } } private void TabLogOut_Click(object sender, EventArgs e) { //ChkHide(); Logout.MdiParent = this; Logout.Dock = DockStyle.Fill; Logout.Show(); //Global.SendMessage(Global.SysPara.iLogoutWnd, Global.WM_OPENTIMER, 0, 0); } private void TabAddMoney_Click(object sender, EventArgs e) { //ChkHide(); //ICAdd.MdiParent = this; //ICAdd.Dock = DockStyle.Fill; //ICAdd.Show(); //Global.SendMessage(Global.SysPara.iAddMoneyWnd, Global.WM_OPENTIMER, 0, 0); } //Issue = new frmIssue(); (实例化了) private void TabIssue_Click(object sender, EventArgs e) { try { //ChkHide(); //Issue = new frmIssue(); //Issue.MdiParent = this; //Issue.Dock = DockStyle.Fill; //Issue.Show(); } catch(Exception err) { MessageBox.Show(err.Message); } } 不知道为什么有创建窗体句柄出错 我是使用的第三方控件,我发现只要设成MDI窗体就有问题,我现在想到的解决办法就是控制窗体的显示位置,看上去也象是MDI模式的,谢谢各位了。 求助:vs2012 用什么代替 WebDeploymentSetup 给个简单的事件实例给我好么? 用C#实现这个功能 (统计)大家做开发的机子一般都装什么操作系统啊?(XP 或 server 2003) 帮忙 aspx文件编写问题,请指教. winForm中如何显示表格的问题,请大家指教 取图片的字节大小。 关于c#foreach删除xml一条信息 什么原理 C# 调用C++的DLL文件出现问题。尝试读取或写入受保护的内存。这通常指示其他内存已损坏。 请问如何c#实现checkbox 全选 DataShow:Microsoft SQL Server数据库建模工具正式发布
Message MainMessge; frmIssue Issue;
frmLogout Logout;
frmICAdd ICAdd;
public frmICOpr(IntPtr HandleTmp)
{
InitializeComponent(); MainHandle = HandleTmp; Global.SysPara.ShowOne.IsICOpr = true;
} public frmICOpr(System.Windows.Forms.Message m,IntPtr HandleTmp)
{
InitializeComponent(); MainMessge = m;
MainHandle = HandleTmp; Global.SysPara.ShowOne.IsICOpr = true;
}
{
TAdo AdoPort; ICOprs.eICOpr eOrder; eOrder = ICOprs.eICOpr.eNone; Global.UnregisterHotKey(MainHandle, Global.HOTKEYF2);
Global.UnregisterHotKey(MainHandle, Global.HOTKEYF3);
Global.UnregisterHotKey(MainHandle, Global.HOTKEYF4);
Global.UnregisterHotKey(MainHandle, Global.HOTKEYF5); Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF2, 0, Global.VK_F2);
Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF3, 0, Global.VK_F3);
Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF4, 0, Global.VK_F4);
Global.RegisterHotKey(Handle.ToInt32(), Global.HOTKEYF5, 0, Global.VK_F5);
AdoPort = new TAdo(Global.SysPara.sDataSrc, "Manage10", Global.SysPara.sUser, Global.SysPara.sKey); if (Global.SysPara.tOper.IsIssue || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabIssue.Visible = true; //Issue = new frmIssue();
} if (Global.SysPara.tOper.IsLogOut || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabLogOut.Visible = true; Logout = new frmLogout();
} if (Global.SysPara.tOper.IsCAddMoney || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabAddMoney.Visible = true; //ICAdd = new frmICAdd();
} if (Global.SysPara.tOper.IsFunCard || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabIssueFun.Visible = true;
} if (Global.SysPara.tOper.IsNightCard || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabIssueNight.Visible = true;
} if (Global.SysPara.tOper.IsLost || Global.SysPara.tOper.IsReissue
|| Global.SysPara.tOper.IsBackMoney || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabLoss.Visible = true;
} if (Global.SysPara.tOper.IsCancelLost || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabCancelLoss.Visible = true;
} if (Global.SysPara.tOper.IsRoam || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabRoam.Visible = true;
} if (Global.SysPara.tOper.IsCardRise || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabCardRise.Visible = true;
} if (Global.SysPara.tOper.IsAutoRise || Global.SysPara.tOper.IsAdmin || Global.SysPara.IsBoss)
{
TabAutoRise.Visible = true;
} if (TabIssue.Visible)
{
eOrder = ICOprs.eICOpr.Issue; TabICOPr.SelectedTab = TabIssue; TabIssue_Click(sender, e);
}
else if (TabLogOut.Visible)
{
eOrder = ICOprs.eICOpr.LogOut; TabICOPr.SelectedTab = TabLogOut;
}
else if (TabAddMoney.Visible)
{
eOrder = ICOprs.eICOpr.AddMoney; TabICOPr.SelectedTab = TabAddMoney;
}
else if (TabIssueFun.Visible)
{
eOrder = ICOprs.eICOpr.IssueFun; TabICOPr.SelectedTab = TabIssueFun;
}
else if (TabIssueNight.Visible)
{
eOrder = ICOprs.eICOpr.IssueNight; TabICOPr.SelectedTab = TabIssueNight;
}
else if (TabLoss.Visible)
{
eOrder = ICOprs.eICOpr.Loss; TabICOPr.SelectedTab = TabLoss;
}
else if (TabCancelLoss.Visible)
{
eOrder = ICOprs.eICOpr.CancelLost; TabICOPr.SelectedTab = TabCancelLoss;
}
else if (TabRoam.Visible)
{
eOrder = ICOprs.eICOpr.Roam; TabICOPr.SelectedTab = TabRoam;
}
else if (TabCardRise.Visible)
{
eOrder = ICOprs.eICOpr.CardRise; TabICOPr.SelectedTab = TabCardRise;
}
else if (TabAutoRise.Visible)
{
eOrder = ICOprs.eICOpr.AutoRise; TabICOPr.SelectedTab = TabAutoRise;
}
else if (TabIDBand.Visible)
{
eOrder = ICOprs.eICOpr.IDBand; TabICOPr.SelectedTab = TabIDBand;
} if (MainMessge.HWnd.ToInt32() != 0)
{
DefWndProc(ref MainMessge);
}
} private void frmICOpr_FormClosing(object sender, FormClosingEventArgs e)
{
if (MainHandle.ToInt32() != 0)
{
Global.UnregisterHotKey(this.Handle, Global.HOTKEYF2);
Global.UnregisterHotKey(this.Handle, Global.HOTKEYF3);
Global.UnregisterHotKey(this.Handle, Global.HOTKEYF4);
Global.UnregisterHotKey(this.Handle, Global.HOTKEYF5); Global.SendMessage(MainHandle.ToInt32(), Global.WM_CLOSEICPOR, 0, 0); Global.SendMessage(MainHandle.ToInt32(), Global.WM_BANDDING, 0, 0);
} Global.SysPara.ShowOne.IsICOpr = false; ICOpr.CloseCom();
}
private void ChkHide()
{
Issue.Hide();
//Logout.Hide();
//ICAdd.Hide();
} //private bool GetInstanceState(string name)
//{
// int l = this.MdiChildren.Length;
// for (int i = 0; i < l; i++)
// {
// if (this.MdiChildren[i].Name == name)
// {
// this.MdiChildren[i].Focus();
// return true;
// }
// }
// return false;
//} private void TabIssue_Click(object sender, EventArgs e)
{
try
{
//ChkHide();
//Issue = new frmIssue();
//Issue.MdiParent = this;
//Issue.Dock = DockStyle.Fill;
//Issue.Show();
}
catch(Exception err)
{
MessageBox.Show(err.Message);
}
} private void TabLogOut_Click(object sender, EventArgs e)
{
//ChkHide();
Logout.MdiParent = this;
Logout.Dock = DockStyle.Fill; Logout.Show(); //Global.SendMessage(Global.SysPara.iLogoutWnd, Global.WM_OPENTIMER, 0, 0);
} private void TabAddMoney_Click(object sender, EventArgs e)
{
//ChkHide();
//ICAdd.MdiParent = this;
//ICAdd.Dock = DockStyle.Fill;
//ICAdd.Show(); //Global.SendMessage(Global.SysPara.iAddMoneyWnd, Global.WM_OPENTIMER, 0, 0);
}
private void TabIssue_Click(object sender, EventArgs e)
{
try
{
//ChkHide();
//Issue = new frmIssue();
//Issue.MdiParent = this;
//Issue.Dock = DockStyle.Fill;
//Issue.Show();
}
catch(Exception err)
{
MessageBox.Show(err.Message);
}
}
不知道为什么有创建窗体句柄出错
我现在想到的解决办法就是控制窗体的显示位置,看上去也象是MDI模式的,谢谢各位了。