Inserir item na Grid

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Softwhouse
Usuário Nível 3
Usuário Nível 3
Mensagens: 324
Registrado em: 07 Dez 2011 18:44
Localização: Porto Alegre/RS

Inserir item na Grid

Mensagem por Softwhouse »

Estou tendo necessidade de inserir ítens em uma Grid (inserir um item entre outros dois). Não encontrei nada sobre isso, alguém teria uma idéia de como fazer isso, se é que é possível ? Grato.
Fernando
wesley assis
Usuário Nível 1
Usuário Nível 1
Mensagens: 37
Registrado em: 08 Abr 2010 16:16
Localização: Belo Horizonte - MG

Inserir item na Grid

Mensagem por wesley assis »

Não entendi muito sua pergunta, mas se o seu arquivo está indexado, automaticamente o Grid irá colocar uma linha entre a outra se for o caso.
Exemplo, se você dois registros um começando com A e o outro com C e você inserir um com B, esse irá aparecer entre A e C, deste que esse arquivo esteja indexado. Mas se você der exemplo, talvez poderemos ajudá-lo.
Avatar do usuário
Daniel
Usuário Nível 3
Usuário Nível 3
Mensagens: 373
Registrado em: 13 Ago 2003 22:42
Localização: Apucarana - PR

Inserir item na Grid

Mensagem por Daniel »

ola segue um exemplo

Código: Selecionar todos

/*
 * MiniGUI Property Test
 * (c) 2008 Roberto Lopez
*/

#include "minigui.ch"

Function Main
	Declare aRows [20] [3]

	DEFINE WINDOW Form_1 ;
		AT 0,0 ;
		WIDTH 550 ;
		HEIGHT 420 ;
		TITLE 'Hello World!' ;
		MAIN ;
		ON INIT OnInit()

		DEFINE MAIN MENU
			DEFINE POPUP 'File'
				MENUITEM 'Add Linha 'ACTION Add()
			END POPUP
		END MENU

		DEFINE GRID Grid_1
			ROW		10
			COL		10
			WIDTH		500
			HEIGHT		330
			HEADERS		{'Last Name','First Name','Phone'}
			WIDTHS		{140,140,140}
			ITEMS		{}
		END GRID

	END WINDOW

	Form_1.Center

	Form_1.Activate

Return Nil


Procedure OnInit

	aRows [1]	:= {'Simpson','Homer','555-5555'}
	aRows [2]	:= {'Mulder','Fox','324-6432'}
	aRows [3]	:= {'Smart','Max','432-5892'}
	aRows [4]	:= {'Grillo','Pepe','894-2332'}
	aRows [5]	:= {'Kirk','James','346-9873'}
	aRows [6]	:= {'Barriga','Carlos','394-9654'}
	aRows [7]	:= {'Flanders','Ned','435-3211'}
	aRows [8]	:= {'Smith','John','123-1234'}
	aRows [9]	:= {'Pedemonti','Flavio','000-0000'}
	aRows [10]	:= {'Gomez','Juan','583-4832'}
	aRows [11]	:= {'Fernandez','Raul','321-4332'}
	aRows [12]	:= {'Borges','Javier','326-9430'}
	aRows [13]	:= {'Alvarez','Alberto','543-7898'}
	aRows [14]	:= {'Gonzalez','Ambo','437-8473'}
	aRows [15]	:= {'Batistuta','Gol','485-2843'}
	aRows [16]	:= {'Vinazzi','Amigo','394-5983'}
	aRows [17]	:= {'Pedemonti','Flavio','534-7984'}
	aRows [18]	:= {'Samarbide','Armando','854-7873'}
	aRows [19]	:= {'Pradon','Alejandra','???-????'}
	aRows [20]	:= {'Reyes','Monica','432-5836'}

  	Form_1.Grid_1.SetArray(aRows)
	Form_1.Grid_1.Value := 1
	Return Nil

Function add()
Local aRows1:= {}, n, x

	n:= Form_1.Grid_1.Value
 	For x:= 1 To (Form_1.Grid_1.ItemCount)
 		If n = x
 			aadd(aRows1, {'Denobie','Daniel','432-7777'})
 			aadd(aRows1, {aRows[x,1],aRows[x,2], aRows[x,3]} )
 		Else
  			aadd(arows1, {aRows[x,1],aRows[x,2], aRows[x,3]} )
 		endif
 	next x
 	Form_1.Grid_1.DeleteAllItems
 	aRows:= aClone(aRows1)
 	Form_1.Grid_1.SetArray( aRows1 )
 	Form_1.Grid_1.Value := n
 	Return Nil
Daniel

Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Softwhouse
Usuário Nível 3
Usuário Nível 3
Mensagens: 324
Registrado em: 07 Dez 2011 18:44
Localização: Porto Alegre/RS

Inserir item na Grid

Mensagem por Softwhouse »

Daniel, era isso mesmo que preciso, muito obrigado. Wesley obrigado também.
Fernando
Responder