C#中能不能,已经定义一个button控件,如何在窗体中隐藏它(本人新手)
在窗体中定义了一个button控件,用来实现当按下enter后触发一个事件,可是如果留在窗体中影响美观,如何能让他在程序运行时候不显示,还能实现上面的功能呢?如果不能的话,能不能用其他不影响美观的控件来实现上面的功能,大虾们帮帮忙
小弟不胜感谢!!! --------------------编程问答--------------------
button.Visible=false;--------------------编程问答-------------------- 功能肯定需要某些事件触发
button也是通过点击事件触发的 --------------------编程问答-------------------- bool bt=false;
if (bt==true)
button1.Hide();
Hide()这个方法可以隐藏控件的 --------------------编程问答-------------------- LZ头像的漫画 好熟悉 想不起来什么名字了 --------------------编程问答-------------------- 调整它的位置到界面外 --------------------编程问答-------------------- 我建议你注册Form的键盘事件,判断当是Enter键时调用Button的键盘事件,或者直接调用代码. --------------------编程问答--------------------
把它隐藏后,发现按enter就没有那个功能了呢?按下enter无法触发事件,可是不隐藏的时候就可以.. --------------------编程问答-------------------- 如果你吧把事件放在but单击事件里,你把but给隐藏了,你还能点击吗?不点击怎么执行呢? --------------------编程问答--------------------
看来是没得方法了--! --------------------编程问答-------------------- 你想在什么时候调用 就在相应的位置调用方法就可以了啊~ F10调试一下 --------------------编程问答-------------------- 直接让窗体接收 Enter就行了,根本不需要用Button呀!
using System;--------------------编程问答-------------------- this.button1.visible=false; --------------------编程问答-------------------- 直接将buttonclick事件的代码移植到FormKeypress里面 --------------------编程问答--------------------
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Drawing.Drawing2D;
public class Form1 : System.Windows.Forms.Form{
public Form1() {
InitializeComponent();
}
private void InitializeComponent() {
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(292, 273);
this.Name = "Form1";
this.Text = "Form1";
this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.Form1_KeyPress);
}
static void Main() {
Application.Run(new Form1());
}
private void Form1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e) {
Console.WriteLine("Key Press");
}
不明白楼主意思 如果只是想隐藏它的话可以这样:
1.找一个label控件 把图贴上 就是相当于给图打了个补丁 楼主明白我意思吧
2.给label控件写事件 当鼠标单击的时候mouse_click就可以做到功能
3.截获回车消息 然后再写功能。 --------------------编程问答-------------------- 楼主是想让这个按钮在运行时不被用户看见并且保留按下ENTER键能够触发按钮对应的事件吗
“不显示”就可以被更好的描述“不被看见”代替
让它的前景色和背景色都透明不就OK啦
例如:
--------------------编程问答-------------------- 哦,不好意思
this.Button1.BackColor = System.Drawing.Color.Transparent;
this.Button1.ForeColor = System.Drawing.Color.Transparent;
Button的BackColor属性设置为Transparent是不起作用的
可以用Lable控件代替 --------------------编程问答-------------------- button.Visible=false;
就OK! --------------------编程问答-------------------- 设置为透明后不可视就行了 --------------------编程问答-------------------- 明白你的意思,那个按钮看上去很不爽的,那就用"KeyDown"事件,如果是按下“Enter”键后起作用,那就
这样写:
//注:是在你选择的控件的KeyDown事件中写;
private void 控件名_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode==Keys.Enter)
{
//这里面写你要写的内容;
}
} --------------------编程问答-------------------- 这么多,来晚了,路过,顶下............... --------------------编程问答-------------------- 我觉得你还是用linklabel吧,让它的text为空格,就基本看不见啦,还可以点,呵呵 --------------------编程问答--------------------
这个方法貌似不管用呀 --------------------编程问答-------------------- visible= false 啊。。
补充:.NET技术 , C#