Jump to content
Fivewin Brasil

Dúvida com o controle FOLDER ???


Cezar

Recommended Posts

OLA,

Na DIALOG tenho um FOLDER com 3 guias ( abas ), em cada aba ( pagina ) 3 ou 4 GETs:

No final da edição dos gets da pagina-1, ao invés de ir para a pagina-2, preciso posicionar o foco no botão "X" que está fora da FOLDER; depois da edição dos gets da pagina-2, ao invés de ir para pagina-3, preciso posicionar o foco no Botão "X" e assim sucessivamente...

Ao final do ultimo get de cada pagina da FOLDER, ao invés de ir para pagina seguinte vou para o Botão "X" ??

Se voces tiverem alguma sugestão eu agradeço !!!!

Link to comment
Share on other sites

Olá... Não entendi muito bem o que você está Querendo, nem o motivo disto...

mas vamos começar assim... Quem sabe não dá certo...

// Tente assim...

@ 6.5, 2.0 BUTTON oBtn_Acao PROMPT "&Acao" ;

ACTION Botao_X( oDlg ) // ( GetKeyState( VK_ESCAPE ) )

@ 6.5, 8.0 BUTTON oBtn_Saida PROMPT "&Saida" ;

ACTION( oDlg:End() ) CANCEL

// Ou Assim...

ACTIVATE DIALOG oDlg CENTERED ;

ON INIT ( GetKeyState( VK_ESCAPE ) )

DbCloseAll()

EndDialog()

GlobalFree()

ResAllFree()

RETURN NIL

//-----------------------------------------------------------------------------

Function Botao_X( oDlg )

GetKeyState( VK_ESCAPE )

? 'Estou No Botao X'

oDlg:SetFocus()

oDlg:Refresh() //???

oDlg:UpDate()

Return Nil

João Santos

São Paulo-Brasil

(11) 3106-2832 a Noite

karinhannah@ubbi.com.br

Link to comment
Share on other sites

Olá,

João, já entendi diferente. Acho que ele quer é que ao dar no último get da página 1, vá direto para o primeiro get da página 2. Cezar, se for isto, inclua após o último get da página 1:

oGetX_1 : bKeyDown:={|nKey|iif(nKey==VK_RETURN,(oFld:setoption(2),oGet1_2:setfocus()),)}

Onde oGetX_1 é o último get da página 1 e oGet1_2 é o primeiro get da página 2.

[]s,

Evandro G. de Paula

Curvelo - MG

evandro@skillnet.com.br (Escr. - na Cidade)

imortal@skillnet.com.br (Res. - na Roça)

Link to comment
Share on other sites

Karinh e Evandro, bom dia !

Evandro é quase isso, só que ao invés de ir para o primeiro Get da pagina-2 eu vou para o Botão "X" .....

Ex.:

Pagina-1 Pagina-2 Pagina-3

Get1 Get4 Get7

Get2 Get5 Get8

Get3 Get6 Get9

No final do Get3 vou para Botão "X"

No final do Get6 vou para Botão "X"

No final do Get7 vou para Botão "X" ....

No botão "X", decido se quero ir para pagina-2,3 ou se vou gravar ou cancelar as informaçoes.

A pagina-1 é a principal e as paginas 2 e 3 tem apenas alguns parametros que refletem na informaçoes da primeira pagina, que serão modificadas em situaçoes especiais.

Será que melhorou ??

Grato.

Link to comment
Share on other sites

Cezar... Não faz sentido!

No botão "X", decido se quero ir para pagina-2,3 ou se vou gravar ou cancelar as

informaçoes. Como que você vai 'decidir' o que fazer, se o botão "X", só te per-

mite uma ação: Sair!? Pois ele é o 'ESCAPE'! Não compreendo... Não teria outra

forma de você tomar esta decisão? Você não prefere postar o código, explicando

nele o que você pretende fazer com mais clareza? Não vejo solução imediata em

cima do botão 'X', não consigo imaginar nenhuma saida desta forma...

Pelo que eu entendo, o botão 'X' da dialog já fica ativo intermitentemente, não

tem como eu interferir nele, sem que o programa 'ESCAPE'... Entende?

Se você usar o ALT+LETRA da ABA não resolve seu problema?

Se você usasse o oJump não resolveria? como no exemplo abaixo:

// Neste Get, Entra o Vendedor, e Pula Para o Outro Folder Automatico

REDEFINE GET oGet1 VAR oDbf:Vendedor PICTURE "@K!" ;

ID 39 OF oFld:aDialogs[ 1 ] ;

FONT oFont UPDATE ;

COLOR CLR_BLACK, CLR_HCYAN ;

CURSOR oHand ;

MESSAGE ( OemToAnsi( "Vendedor" ) ) ;

VALID !Vazio( oDbf:Vendedor ) .AND. ;

IF( GetASyncKey( VK_RETURN ) .OR. ;

GetASyncKey( VK_DOWN ), ;

( oGet1:oJump := oGet2, ;

oFld:SetOption( 2 ), oFld:SetFocus(), ;

oFld:Refresh(), .T. ), .T. )

REDEFINE GET oGet2 VAR oDbf:Nome_Artis PICTURE "@K!" ;

ID 22 OF oFld:aDialogs[ 2 ] ;

FONT oFont UPDATE ;

COLOR CLR_HRED, CLR_HCYAN ;

CURSOR oHand ;

MESSAGE ( OemToAnsi( "Nome Art¡stico" ) ) ;

VALID IF( oGet2:oWnd:nLastkey = VK_UP, ;

( oGet2:oJump := oGet1, ;

oFld:SetOption( 1 ), oFld:SetFocus(), ;

oFld:Refresh(), .T. ), .T. )

Usando o oGet e SetOption e o oJump, você mandaria para o Get que você quisesse,

e para o Folder que você quisesse, ou seja, você pode pular do Folder 1 para o 7

do folder 7 para o 3 do 3 para o 5 do 5 para 1 do 1 para 4 e assim sucessivamente

tandeu?

Veja comandos: GetASyncKey e nLastkey. Espero tê-lo ajudado. Abraços.

Que dureza... Só tomando um dreher! Sinceramente, não entendi Cezar... Sorry!

João Santos

São Paulo-Brasil

(11) 3106-2832 a Noite

karinhannah@ubbi.com.br

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...