zoukankan
html css js c++ java
c#开发windows应用程序几个小技巧
From:
http://elevenwolf.cnblogs.com/archive/2004/07/23/26969.html
1.一个应用程序只能被用户打开一次
Process mobj_pro
=
Process.GetCurrentProcess();
Process[] mobj_proList
=
Process.GetProcessesByName(mobj_pro.ProcessName);
if
(mobj_proList.Length
>
1
)
{
MessageBox.Show(
"
当前的应用程序已打开!
"
,
"
系统提示
"
, MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
return
;
}
2.一个框架窗口下只打开一个子窗口
CustomerAdd pobj_CustomerAdd;
Form pobj_CustomerAdd_Return
=
CheckIsExit(
"
CustomerAdd
"
);
if
(pobj_CustomerAdd_Return
==
null
)
{
pobj_CustomerAdd
=
new
CustomerAdd();
OpenSheet(pobj_CustomerAdd);
}
else
{
OpenSheet((CustomerAdd)pobj_CustomerAdd_Return);
}
void
OpenSheet(Form pobj_form)
{
pobj_form.MdiParent
=
this
;
pobj_form.Show();
}
/**/
/**/
/**/
///
<summary>
///
判断窗口是否存在
///
</summary>
///
<param name="ps_windowName">
窗口的名称
</param>
///
<returns>
存在返回此窗口的实例 不存在返回null
</returns>
Form CheckIsExit(
string
ps_windowName)
{
for
(
int
i
=
0
;i
<
this
.MdiChildren.Length;i
++
)
{
if
(
this
.MdiChildren[i].Name
==
ps_windowName)
{
return
this
.MdiChildren[i];
}
}
return
null
;
}
3.弹出式窗口显示渐变效果
在页面上添加一个timer控件fadeTimer,interval设为50
类的实例变量为
private m_showing=true;
在form_load中写:
Opacity
=
0.0
;
Activate();
Refresh();
fadeTimer.Start();
Refresh();
在timer控件的Tick事件中写:
if
(m_showing)
{
double
d
=
1000.0
/
fadeTimer.Interval
/
100.0
;
if
(Opacity
+
d
>=
1.0
)
{
Opacity
=
1.0
;
fadeTimer.Stop();
}
else
{
Opacity
+=
d;
}
}
else
{
double
d
=
1000.0
/
fadeTimer.Interval
/
100.0
;
if
(Opacity
-
d
<=
0.0
)
{
Opacity
=
0.0
;
fadeTimer.Stop();
}
else
{
Opacity
-=
d;
}
}
4.在控件textbox中实现按回车键相当于tab键的作用
public
class
OSTextBox:TextBox
{
public
OSTextBox()
{
}
bool
mb_IsKeyEnter
=
true
;
[
Category(
"
Data
"
),
DefaultValue(
true
),
MergableProperty(
false
)
]
public
bool
IsKeyEnter
{
get
{
return
mb_IsKeyEnter;
}
set
{
mb_IsKeyEnter
=
value;
}
}
protected
override
void
OnKeyPress(KeyPressEventArgs e)
{
base
.OnKeyPress (e);
if
(mb_IsKeyEnter)
{
if
(e.KeyChar
==
(
char
)Keys.Enter)
{
SendKeys.Send(
"
{Tab}
"
);
}
}
}
}
这些都是值得总结使用的
查看全文
相关阅读:
springboot ueditor 使用心得
利用github和git命令,将本地项目共享到服务器上——第二章
利用github和git命令,将本地项目共享到服务器上
如何打造亚秒级加载的网页3——用户体验 总结
如何打造亚秒级加载的网页2——网络性能 过程解读
如何打造亚秒级加载的网页1——前端性能
什么是跨域?怎么解决跨域?
Vue生命周期
利用JS实现vue中的双向绑定
按照vue文档使用JavaScript钩子但是却不能执行动画?
原文地址:https://www.cnblogs.com/jhtchina/p/334834.html
最新文章
【Apache运维基础(3)】虚拟主机配置说明
面向对象之开闭原则
面向对象之迪米特法则
面向对象之依赖倒置原则
面向对象之里氏替换原则
LVS Nginx HAProxy
Docker命令使用详解
Docker介绍及安装
Docker中容器的备份、恢复和迁移
CentOS 5/6上安装EPEL源
热门文章
转:Docker创建centos的LNMP镜像
linux cut sort wc sed>vi awk (文本处理)
linux grep 正则
linux vi
linux 简单命令说明
linux 目录介绍
初识linux命令
idea 导入项目后不能执行main方法
linux mysql 链接数太小
linux yum
Copyright © 2011-2022 走看看