Eventos de un button
Publicado por Meta (12 intervenciones) el 04/05/2018 12:16:26
Hola:
Quiero saber como se controla los eventos de un botón. Quiero hacer mostrar mensajes y no puedo. Pero puedo abrir y cerrar la bandeja del lector.
Crea Windwos Form con F#.

Lo que debe hacer el programa es esto. Crea un Windows form como muestra en la imagen. Su código es este.
Quiero la parte de los eventos de cada botón, tanto el abrir y cerrar. Lo que tiene que hacer es lo siguiente.
Si pulso el botón Arbir, muestra en el label_Mensaje, el mensaje "Abriendo..." mientras se está abriendo el lector o bandeja del disco.
Cuando se abra del todo la bandeja del disco, muestra el mensaje "Abierto".
Para el botón Cerrar lo mismo.
El comando que funciona bien abrir el lector o bandeja es este:
Para cerrar:
¿Alguna idea?
Saludos.
Quiero saber como se controla los eventos de un botón. Quiero hacer mostrar mensajes y no puedo. Pero puedo abrir y cerrar la bandeja del lector.
Crea Windwos Form con F#.
Lo que debe hacer el programa es esto. Crea un Windows form como muestra en la imagen. Su código es este.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
open System
open System.Text
open System.Windows.Forms // Añadir refrencias.
open System.Drawing // Añadir referencias.
open System.Runtime.InteropServices
// Importar librería o dll externo.
[<DllImport("winmm.dll")>]
extern int mciSendString(string lpstrCommand, StringBuilder lpstrReturnString,
int uReturnLength, IntPtr hwndCallback)
let rt = StringBuilder(127)
// Método necesario para admitir el Diseñador. No se puede modificar
// el contenido de este método con el editor de código.
let form = new Form()
let label_Mensaje = new Label()
let groupBox_Bandeja = new GroupBox()
let button_Abrir = new Button();
let button_Cerrar = new Button();
groupBox_Bandeja.SuspendLayout()
form.SuspendLayout()
// groupBox_Bandeja
groupBox_Bandeja.Controls.Add(button_Abrir) // Añadir botones en el
groupBox_Bandeja.Controls.Add(button_Cerrar) // groupBox_Bandeja.
groupBox_Bandeja.Location <- Point(22, 118)
groupBox_Bandeja.Name <- "groupBox_Bandeja"
groupBox_Bandeja.Size <- Size(227, 90)
groupBox_Bandeja.TabIndex <- 0
groupBox_Bandeja.TabStop <- false
groupBox_Bandeja.Text <- "Bandeja:"
// button_Abrir
button_Abrir.Location <- Point(26, 39)
button_Abrir.Name <- "button_Abrir"
button_Abrir.Size <- Size(75, 23)
button_Abrir.TabIndex <- 0
button_Abrir.Text <- "&Abrir"
button_Abrir.UseVisualStyleBackColor <- true
// this.button_Abrir.Click += new System.EventHandler(this.button_Abrir_Click);
// button_Cerrar
button_Cerrar.Location <- Point(129, 39)
button_Cerrar.Name <- "button_Cerrar"
button_Cerrar.Size <- Size(75, 23)
button_Cerrar.TabIndex <- 1
button_Cerrar.Text <- "&Cerrar"
button_Cerrar.UseVisualStyleBackColor <- true
// label_Mensaje
label_Mensaje.AutoSize <- true
//label_Mensaje.Font <- Font("Microsoft Sans Serif", 36, FontStyle.Bold, GraphicsUnit.Point, ((byte)(0)))
label_Mensaje.Location <- Point(12, 9)
label_Mensaje.Name <- "label_Mensaje"
label_Mensaje.Size <- Size(52, 55)
label_Mensaje.TabIndex <- 1
label_Mensaje.Text <- "?"
form.Controls.Add(label_Mensaje) // Añadir en el formulario.
// Crear formulario.
let AutoScaleDimensions = new Size(6, 13)
form.AutoScaleMode <- AutoScaleMode.Font
form.BackColor <- Color.FromArgb(((int)(((byte)(114)))), ((int)(((byte)(54)))), ((int)(((byte)(161))))) // Color violeta.
let ClientSize = new Size(284, 261)
form.Controls.Add(groupBox_Bandeja) // Añadir en el formulario.
form.Name <- "Form1"
form.StartPosition <- FormStartPosition.CenterScreen
form.Text <- "Visual F# 2017"
groupBox_Bandeja.ResumeLayout(false)
form.ResumeLayout(false)
form.PerformLayout()
//----------------------------------------------------------------------------------
[<STAThread>]
Application.Run(form)
Quiero la parte de los eventos de cada botón, tanto el abrir y cerrar. Lo que tiene que hacer es lo siguiente.
Si pulso el botón Arbir, muestra en el label_Mensaje, el mensaje "Abriendo..." mientras se está abriendo el lector o bandeja del disco.
Cuando se abra del todo la bandeja del disco, muestra el mensaje "Abierto".
Para el botón Cerrar lo mismo.
El comando que funciona bien abrir el lector o bandeja es este:
1
2
let button_Abrir_Click _bandeja = mciSendString("set CDAudio door open", rt, 127, IntPtr.Zero) |> ignore
button_Abrir.Click.Add(button_Abrir_Click) |> ignore
Para cerrar:
1
2
let button_Cerrar_Click _cerrar = mciSendString("set CDAudio door closed", rt, 127, IntPtr.Zero) |> ignore
let _cerrar = button_Cerrar.Click.Add(button_Cerrar_Click)
¿Alguna idea?
Saludos.
Valora esta pregunta


0