BUTTON First Previous Next Last

Discuss anything else that does not suite other forums.

Moderator: Rathinagiri

Post Reply
User avatar
mustafa
Posts: 1158
Joined: Fri Mar 20, 2009 11:38 am
DBs Used: DBF
Location: Alicante - Spain
Contact:

BUTTON First Previous Next Last

Post by mustafa »

Hola amigos:
Estoy experimentando con un Grid Virtual
Partiendo de una base de datos "STOCK.DBF"
No consigo que la barra del Grid se mueva
con los Botones--> First Previous Next Last

Solamente he conseguido que uno de los botones
se desplace al último registro de la base en

*----------------------------------------------*
Function GoLast()
*----------------------------------------------*

Form_1.Grid_2.Value := { Form_1.Grid_2.Itemcount, 2 }

Return

*-----------------------------------------------*

Agradecido si alguien me puede indicar como hacer el resto
de acciones de los Botones--> First Previous Next Last

Agradecido
Mustafa

*------------------------ Google------------------------*

Hello friends
I'm experimenting with a Virtual Grid
Starting from a database "STOCK.DBF"
I can not get the Grid bar to move
with the Buttons -> First Previous Next Last

I've only got one of the buttons
move to the last record of the base in
 
*----------------------------------------------*
 Function GoLast ()
*----------------------------------------------*

  Form_1.Grid_2.Value: = {Form_1.Grid_2.Itemcount, 2}

Return
*-----------------------------------------------*

Grateful if someone can tell me how to do the rest
of actions of the Buttons -> First Previous Next Last

Grateful
Mustafa
Attachments
Pantallazo.jpg
Pantallazo.jpg (81.81 KiB) Viewed 1964 times
Demo_Grid_Virtual.zip
(60.71 KiB) Downloaded 121 times
User avatar
SALINETAS24
Posts: 667
Joined: Tue Feb 27, 2018 3:06 am
DBs Used: DBF
Contact:

Re: BUTTON First Previous Next Last

Post by SALINETAS24 »

Yeeeep, bon dia amic.
¿Como va todo por Torrevieja...?
Te paso un trozo para moverte, tu ya lo pones fino.
La función en cuestión es SetProperty, pero tienes que tener en cuenta ha hay que cargar una matriz de dos posiciones, que son las que lee "Form_1.Grid_2.Value", la primera es la fila donde estás y la segunda la columna. Yo la segunda la pongo en la primera.
Con esto vas hacia atras .., para ir hacia delante sumas jejeje.
Ah,! y que no se te olvide controlar el final y el principio del GRID.

Un abrazo.

Code: Select all

*---------------------------------------------------------*
 Function GoPrevious()
*---------------------------------------------------------*
LOCAL nPos

	msgbox(Form_1.Grid_2.Value[1])
	npos:=Form_1.Grid_2.Value[1]
	msgbox(npos)
	npos=npos-1
	msgbox(npos)
	SetProperty("Form_1","Grid_2","VALUE",{nPos,1})
	msgbox(Form_1.Grid_2.Value[1])
	Form_1.Grid_2.Refresh
	
 return

Como dijo el gran pensador Hommer Simpson..., - En este mundo solo hay 3 tipos de personas, los que saben contar y los que no. :shock:
User avatar
SALINETAS24
Posts: 667
Joined: Tue Feb 27, 2018 3:06 am
DBs Used: DBF
Contact:

Re: BUTTON First Previous Next Last

Post by SALINETAS24 »

Hola, igual esto no se entiende bien,
..... "la primera es la fila donde estás y la segunda la columna. Yo la segunda la pongo en la primera."
Quiero decir que "....YO A LA SEGUNDA LE PONGO EL VALOR 1, que es el de situarme en la primera columna."
Salud y cervezas.
Como dijo el gran pensador Hommer Simpson..., - En este mundo solo hay 3 tipos de personas, los que saben contar y los que no. :shock:
KDJ
Posts: 243
Joined: Mon Sep 05, 2016 3:04 am
Location: Poland

Re: BUTTON First Previous Next Last

Post by KDJ »

Mustafa

You can do this as follows:

Code: Select all

*---------------------------------------------------------*
 Function GoFirst()
*---------------------------------------------------------*

 Form_1.Grid_2.SetFocus
 Form_1.Grid_2.Value := { 1, Form_1.Grid_2.Value[2] }
 ArribAbajo()   

 return

*---------------------------------------------------------*
 Function GoPrevious()
*---------------------------------------------------------*
  LOCAL aValue := Form_1.Grid_2.Value

  Form_1.Grid_2.SetFocus

  IF aValue[1] > 1
    Form_1.Grid_2.Value := { aValue[1] - 1, aValue[2] }
    ArribAbajo()   
  ENDIF

 return

*---------------------------------------------------------*
 Function GoNext()
*---------------------------------------------------------*
  LOCAL aValue := Form_1.Grid_2.Value

  Form_1.Grid_2.SetFocus

  IF aValue[1] < Form_1.Grid_2.Itemcount
    Form_1.Grid_2.Value := { aValue[1] + 1, aValue[2] }
    ArribAbajo()   
  ENDIF

 return

*---------------------------------------------------------*
 Function GoLast()
*---------------------------------------------------------*

 Form_1.Grid_2.SetFocus
 Form_1.Grid_2.Value := { Form_1.Grid_2.Itemcount, Form_1.Grid_2.Value[2] }

 ArribAbajo()   


 return
User avatar
mustafa
Posts: 1158
Joined: Fri Mar 20, 2009 11:38 am
DBs Used: DBF
Location: Alicante - Spain
Contact:

Re: BUTTON First Previous Next Last

Post by mustafa »

SALINETAS24 & KDJ

Perfecto
muy agradecido
por vuestra colaboración
saludos
Mustafa

*----------------------------------------------------*
SALINETAS24 & KDJ

Perfect
very thankful
for your collaboration
regards

Mustafa
User avatar
mustafa
Posts: 1158
Joined: Fri Mar 20, 2009 11:38 am
DBs Used: DBF
Location: Alicante - Spain
Contact:

Re: BUTTON First Previous Next Last

Post by mustafa »

Hola amigos:
A veces las cosas más simples pasan desapercividas
todo lo que sirva para realzar un aplicación que
hayamos creado, nos venifia mucho la parte estética.

Les presento unos Samples que despues de tiempo
pense que tenia que incorporar en mis aplicaciones:

El total de Registros, moverme por el Browse o el Grid
con los Botones, en mi caso en el tipo de moneda que
es el Euro € la coma de los decimales.

He intentado que en cada carpeta de un modo sencillo
esten representados todos los formatos usados.
Bases MDB-Adord, SQlite , DBF y DBF->Virtual Arrays

Un saludos
Mustafa
*-----------------------------------------------------*
Hello friends:
Sometimes the simplest things go unnoticed
everything that serves to enhance an application that
we have created, the aesthetic part comes to us very much.

I present some Samples that after time
I thought I had to incorporate in my applications:

The total of Records, move by the Browse or the Grid
with the Buttons, in my case in the type of currency that
is the Euro € the comma of decimals.

I tried that in each folder in a simple way
all the used formats are represented.
Bases MDB-Adord, SQlite, DBF and DBF-> Virtual Arrays

Greetings
Mustafa
Attachments
Button_Bases_Up-Down.zip
(282.5 KiB) Downloaded 149 times
Pantallazo.jpg
Pantallazo.jpg (272.76 KiB) Viewed 1729 times
Post Reply