30. juli 2003 - 02:35Der er
22 kommentarer og 3 løsninger
Når der trykkes på en knap
Hej.
Jeg er lige gået igang med at programmere i C#. Har siddet og leget lidt med det. Bruger MS Visual Studio .NET, og nu sidder jeg med et lille problem. Har en form hvor jeg har oprettet en knap (button). Det jeg gerne vil have lavet er, at når der trykkes på knappen, åbnes en anden form (som også er lavet)
amespace NET_IT_Pro { using System; using System.Data.OleDb; using System.Drawing; using System.Windows; using System.Windows.Forms;
public class CUserConfig : object {
//Oprettelse af globale komponenter Form CreateUserFrm = new Form(); Button cmdCreateUser = new Button(); TextBox txtEmpName = new TextBox(); TextBox txtInit = new TextBox(); Label lblEmpname = new Label(); Label lblInit = new Label();
//Gør MainForm synlig for alle (Globallisering) MainForm MainForm = new MainForm();
public void AddUser() {
//Command knap cmdCreateUser.Text = "Opret"; cmdCreateUser.Location = new Point(10, 35); cmdCreateUser.Click += new EventHandler(cmdCreateUser_Click); CreateUserFrm.Controls.Add(cmdCreateUser);
//Textfelt EmpName txtEmpName.Location = new Point(90, 35); CreateUserFrm.Controls.Add(txtEmpName);
//Textfelt Init txtInit.Location = new Point(90, 90); CreateUserFrm.Controls.Add(txtInit);
Altså tror ikke det skal være så kompliceret. Har bare en standart form (Form1), hvor jeg har oprettet en knap. Når der trykkes på knappen skal den åbne en anden form (Form2)
hehe.. Så nu åbner den en hel ny form! Men jeg ved ikke om du selv har arbejdet med Visual Studio.NET, men ude i siden kan man oprette forms osv. Har oprettet en anden Form (form2) som den skal vise når der trykkes på knappen i form1.
public Form1() { // // Required for Windows Form Designer support // InitializeComponent();
// // TODO: Add any constructor code after InitializeComponent call // }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); }
#region Windows Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.test = new System.Windows.Forms.Button(); this.SuspendLayout(); // // test // this.test.Location = new System.Drawing.Point(144, 96); this.test.Name = "test"; this.test.TabIndex = 0; this.test.Text = "button1"; this.test.Click += new System.EventHandler(this.button1_Click); // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(292, 273); this.Controls.AddRange(new System.Windows.Forms.Control[] { this.test}); this.Name = "Form1"; this.Text = "Form1"; this.Load += new System.EventHandler(this.Form1_Load); this.ResumeLayout(false);
} #endregion
/// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); }
public Form1() { // // Required for Windows Form Designer support // InitializeComponent();
// // TODO: Add any constructor code after InitializeComponent call // }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); }
#region Windows Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.test = new System.Windows.Forms.Button(); this.SuspendLayout(); // // test // this.test.Location = new System.Drawing.Point(144, 96); this.test.Name = "test"; this.test.TabIndex = 0; this.test.Text = "button1"; this.test.Click += new System.EventHandler(this.button1_Click); // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(292, 273); this.Controls.AddRange(new System.Windows.Forms.Control[] { this.test}); this.Name = "Form1"; this.Text = "Form1"; this.Load += new System.EventHandler(this.Form1_Load); this.ResumeLayout(false);
} #endregion
/// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); }
jeg kan ikke rigtig få det til at virke. Der er en eller anden fejl ved "CmdCreateUser_Click".
Men inde i Visual Studio.Net har du ude i siden overblik over forskellige ting. Altså jeg kan oprette fx. en form (det ligner lidt windows stifinder). Når jeg opretter en form, dukker den op som Form2.cs. Også kan jeg dobbeltklikke på den og arbejde med formen! På denne måde kan man skifte mellem de forskellige forme!
public Form1() { // // Required for Windows Form Designer support // InitializeComponent();
// // TODO: Add any constructor code after InitializeComponent call // }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); }
#region Windows Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.test = new System.Windows.Forms.Button(); this.SuspendLayout(); // // test // this.test.Location = new System.Drawing.Point(144, 96); this.test.Name = "test"; this.test.TabIndex = 0; this.test.Text = "button1"; this.test.Click += new System.EventHandler(this.button1_Click); // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(292, 273); this.Controls.AddRange(new System.Windows.Forms.Control[] { this.test}); this.Name = "Form1"; this.Text = "Form1"; this.Load += new System.EventHandler(this.Form1_Load); this.ResumeLayout(false);
} #endregion
/// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); }
Hvordan laver du selv, fx. når du bare har en standart form hvor der er knap. Når der trykkes på den, så åbner den en anden form (som du har lavet i forvejen hvor der findes yderligere text bokse osv)
Jamen det jeg gør er at jeg opretter en fil ved siden af det oprindelige dokument, opretter ny class i et namespace som hedder det samme som det i MainFormen, herefter bygger jeg min form op i programmering der!
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.