Domingo 22 de Diciembre de 2024, 04:11
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Power Builder
(Moderador:
F_Tanori
) »
Evento Keypress De Singlelineedit
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Evento Keypress De Singlelineedit (Leído 5659 veces)
evmuv
Miembro activo
Mensajes: 29
Evento Keypress De Singlelineedit
«
en:
Martes 19 de Septiembre de 2006, 22:48 »
0
Saludos.
Por favor, quisiera saber que evento del control SingleLineEdit es análogo al evento KeyPress en Visual Basic.
He buscado todos los eventos pero no he encontrado ninguno parecido, bueno, muchas gracias de antemano.
Tweet
jarvizu
Nuevo Miembro
Mensajes: 19
Re: Evento Keypress De Singlelineedit
«
Respuesta #1 en:
Jueves 21 de Septiembre de 2006, 07:53 »
0
Que tal evmun...
Primero, te comento que lo siguiente es usando power 8.0.4, el build 10923, he usado poco el 10.5 creoque todavia no tiene el evento keypress implicito en el control singlelineedit, por lo cual lo tienes que crear tu mismo.
Paso 1, en el listbox de los eventos del control selecciona new event, solo rellena el textbox con el nombre el evento de preferencia identificalo con el prefijo ue_, de tal manera que quedaria algo asi ue_mievento, los demas datos losdejas tal y comoestan.
Paso 2, ahora tienes que indicar que al llamar a tu evento se disparara un evento propio del control, en tu caso el que queremos es el de keypress (bueno asi dice VB), en el caso de PB es pbm_keyDown si lo que quieres es evaluar una tecla especifica, si lo que deseas es lo que se va tecleando sin importar cual es el evento es pbm_keyUp.
Tercero ahora si pones el codigo que quieres que actue cuando se de el evento de la tecla y listo.
Te doy un ejemplo de una busqueda recursiva en una dw desde un sle.
Código: Text
type sle_buscar from singlelineedit within w_art_lista
event ue_digitando pbm_keyup
integer x = 50
integer y = 104
integer width = 814
integer height = 92
integer taborder = 10
integer textsize = -10
integer weight = 400
fontcharset fontcharset = ansi!
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "Arial"
long textcolor = 33554432
textcase textcase = upper!
borderstyle borderstyle = stylelowered!
end type
event ue_digitando;string ls_busca, ls_columna
integer li_fila,li_largo
//tomamos el valor...
ls_busca = trim(sle_buscar.text)
li_largo=len(ls_busca)
/* Tomamos la segunda columna como la de busqueda o el campo donde se desea buscar lo que se digita... */
ls_columna = dw_arlis.Describe("#1.Name")
/* Aqui agregaremos a un string todo el argumento
de busqueda con los parametros... */
ls_busca = "Mid (" + ls_columna + ",1," + string(li_largo)+ " ) = '" + ls_busca + "'"
li_fila = dw_arlis.Find (ls_busca, 1, dw_arlis.rowcount())
IF li_fila > 0 THEN
//si encontro algo con ese argumento.. lo lleva a esa fila...
dw_arlis.setrow ( li_fila )
dw_arlis.ScrollToRow ( li_fila )
else
//sino encontro nada con ese argumento nos lleva a la fila 1
dw_arlis.setrow (1)
dw_arlis.ScrollToRow (1)
END IF
end event
evmuv
Miembro activo
Mensajes: 29
Re: Evento Keypress De Singlelineedit
«
Respuesta #2 en:
Viernes 22 de Septiembre de 2006, 00:49 »
0
Ok, muchas gracias, voy a ponerlo a prueba a ver como anda, GRACIAS!!
evmuv
Miembro activo
Mensajes: 29
Re: Evento Keypress De Singlelineedit
«
Respuesta #3 en:
Viernes 22 de Septiembre de 2006, 23:38 »
0
Saludos, tengo varias interrogantes que surgieron cuando intenté aplicar lo que me explicaste.
Primero, me dice que al crear mi nuevo evento solo tengo que ponerle el nombre, entonces el 'cuerpo', por asi decirlo, lo dejo en blanco, no escribo nada, cierto??
o el Script que me mandaste lo pongo alli, en el código del nuevo evento.
Segundo, las variables que defines nunca las usas, a no ser que le estes dando valores a los parametro del control o evento, por ejemplo:
integer x = 50
integer y = 104
integer width = 814
integer height = 92
Nunca usas ni
x
, ni
y
, ni
width
ni
height
, además en Power Builder no me deja definirlo, porque me parecen que son varibles reservadas, a no ser que las defina en un lugar en especial, creo que no especificaste donde, disculpa pero no soy experto, recien llevo un mes y medio programando en Power Builder
.
Por último, esta parte del código no la entiendo muy bien:
type sle_buscar from singlelineedit within w_art_lista
sle_buscar
es el control donde se genera el evento keyDonw, o KeyUp, pero
w_art_lista
? es necesario esto último?
Bueno, muchas gracias por haber respondido mi mensaje anterior, espero que también puedas ayudarme ahora, muchas gracias de antemano.
larg
Nuevo Miembro
Mensajes: 1
Re: Evento Keypress De Singlelineedit
«
Respuesta #4 en:
Martes 15 de Mayo de 2007, 06:47 »
0
hola evmuv, simple.
En P.B. 10.0
es el evento pbm_keydown .
ejemplo simple y cortito para q me entiendas.
keydown(keyenter!).
Saludos,
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Power Builder
(Moderador:
F_Tanori
) »
Evento Keypress De Singlelineedit