Portada
Banner
Portada Foros Manuales Enlaces Email
clear1x1.gif clear1x1.gif clear1x1.gif
clear1x1.gif
clear1x1.gif

Portada
Foros
Manuales
Enlaces
Distribuidores
Precios
Sugerencias

Contacto

 

clear1x1.gif clear1x1.gif
 GuiBuilder - Manual del Usuario (Parte 50/55)
Primero Previo Próximo Último

Colocando las Celdas en Modo de Edición

En el botón de Lista de Object seleccione Form 101 frmgrid
En el botón de lista de Control seleccione Push Button 201 btnEditar
En el botón de lista de Eventos seleccione Button Pushed
En el área de edición del Guibuilder digite el siguiente código que será ejecutado cada vez que el usuario presione el botón Editar

gosub editar_celda

En el Botón de lista de Control seleccione Grid 204 grdmaestroGrid
En el Botón de lista de eventos seleccione Grid Double Click
Después de las marcas de encabezado en el área de edición digite el siguiente código que será ejecutado cada vez que el usuario dé doble click en una celda del grid

gosub editar_celda

Escribiendo la Subrutina de Editar celda

En el Botón de lista de Object seleccione New Subroutine/Function y digite el siguiente nombre Editar Celda y OK

Después de las marcas de encabezado en una nueva línea digite lo siguiente

editar_celda:
rem obtiene la fila actual
     grid_id=num(fattr(datagrid_temp$,"grdmaestroGrid","ID"))  
     row$=sendmsg(gb__sysgui,grid_id,gridGetSelectedRow,0,"")
     row = dec($00$+row$)
rem obtiene la columna actual
     col$=sendmsg(gb__sysgui,grid_id,gridGetSelectedCol,0,"")
     col=dec(col$)
rem prepara la edición
     editparams_desc$="mask:c(1*=0),restore:c(1*=0),"+
:    "initstr:c(1*=0),key:u(2),col:u(2),row:u(4)"
     dim editparams$:editparams_desc$
     editparams.key = 0
     editparams.col = col
     editparams.row = row
rem bloque editando la primera columna la cual es la llave primaria
    if col=0 then
:     msg$="Usted no puede editar la llave primaria del registro.";
:     style = msgboxExclamation;
:     title$="No Edit";
:     trash=msgbox(msg$,style,title$)
:   else
:     trash$=sendmsg(gb__sysgui,grid_id,gridStartEdit,0,editparams$)
return

Adicionando un Nuevo Registro

En el Botón de Lista de Object seleccione Form 101 frmgrid
En el Botón de Lista de Control seleccione Push Button 200 btnNuevo
En el Botón de Lista de Eventos seleccione Button Pushed
En el área de edición del Guibuilder digite el siguiente código que será ejecutado cada vez que el usuario presione el botón Nuevo

Gosub Adicionar_registro

En el Botón de Lista de Object seleccione New Subroutine/Function y déle el nombre Adicionar registro y OK

En el área de edición de Guibuilder después de las marcas del encabezado en una nueva línea digite lo siguiente:

Adicionar_registro:
rem envía el mensaje de adicionar filas
     grid_id=num(fattr(datagrid_temp$,"grdmaestroGrid","ID")) 
     trash$=sendmsg(gb__sysgui,grid_id,gridDataAwareFunctions,0,gridAddRow$)

rem esta bandera esta chequeada en el modo de editar del grid
rem para que el valor de la llave primaria sea puesto en el
rem programa cuando empieza a ocurrir el  evento de edición

     add_in_progress=1

return
Primero Previo Próximo Último

Portada -- Foros -- Manuales -- Enlaces-- Sugerencias
Para comentarios: webmaster@essnet.com

clear1x1.gif
clear1x1.gif
clear1x1.gif
Portada Email Foros