Perguntas Ponto de Entrada MT105SCR Pixel Dinamico

Mais
6 anos 4 meses atrás #32386 por will
Boa Noite Alguém já usou o ponto de entrada MT105SCR?

Estou tentando colocar um ComboBox na tela de Solicitação de Armazém.

Entretanto essa tela ela é dinâmica de acordo cada resolução do Windows o ODLG cria o seus campos.

Como estou colocando valor fixo no ODLG, dependendo da tela meu combo box nem aparece.

alguém sabe uma função para pegar o pixel do windows para mim fazer calculo antes de carregar o componente de combobox na ODLG?

Segue parte do codigo:

User Function MT105SCR()

Local oDlg := ParamIxb[1]
Local nPosicao := ParamIxb[2]
Local OGet := ParamIxb[3]
Public aComboTipoSA := {}
Public cComboTipoSa := Space(1)
Public nComboTipoSa := 1
Public oComboTipoSa := Nil

aAdd( aComboTipoSA, 'Teste' )
aAdd( aComboTipoSA, 'Teste1' )

IF nPosicao == 3

@ 005, 605 SAY OemToAnsi("Tipo") SIZE 268, 8 OF oDlg PIXEL
@ 005, 625 COMBOBOX oComboTipoSa VAR cComboTipoSa ITEMS aComboTipoSA SIZE 50,10 PIXEL OF oDlg on change nComboTipoSa := oComboTipoSa:nAt

ENDIF

Return(NIL)

Veja que ao passar esse valor chumbado @ 005, 605 @ 005, 625 de acordo a resolução desposiciona.

Por favor Acessar ou Registrar para participar da conversa.

Mais
4 anos 10 meses atrás #32715 por Leno2
Olá Will, conseguiu resolver esta questão? estou passando por isso...

Caso tenha conseguido, pode me ajudar?

Os meus campos são criados e ficam escondidos em algum lugar da tela... rsrsrs. Sei que foram criados, pois dou mais 3 "TABs" para pular para a linha do acols!!!

Obrigado,
Segue abaixo o meu fonte:

#INCLUDE "PROTHEUS.CH"
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"

/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³ ºAutor ³LENO ALVES º Data ³ 17/01/19 º±±
±± Este endereço de email está sendo protegido de spambots. Você precisa do JavaScript ativado para vê-lo. º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±º Ponto de entrada para colocar campos customizados na solicitação ao armazen º±±
±± º±±
±±º º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±º º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
User Function MT105SCR()

Local oDlg := ParamIxb[1]
Local nPosicao := ParamIxb[2]
Local OGet := ParamIxb[3]
Public xcEdit1 := Space(06) // PROPOSTA
Public xcEdit2 := Space(02) // CLIENTE
Public xcEdit3 := Space(06) // LOJA

//IF nPosicao == 4
@ C(1), C(7) SAY OemToAnsi("Proposta") SIZE 30, 8 OF oDlg PIXEL
@ C(1), C(10) MsGet xcEdit1 Size 71, 9 COLOR CLR_BLACK Picture "@!" F3 "ADY" PIXEL OF oDlg
@ C(1), C(20) SAY OemToAnsi("Cliente") SIZE 30, 8 OF oDlg PIXEL
@ C(1), C(22) MsGet xcEdit2 Size 71, 9 COLOR CLR_BLACK Picture "@!" F3 "SA1" PIXEL OF oDlg
@ C(1), C(23) SAY OemToAnsi("Loja") SIZE 30, 8 OF oDlg PIXEL
@ C(1), C(25) MsGet xcEdit3 Size 71, 9 COLOR CLR_BLACK Picture "@!" PIXEL OF oDlg
//ENDIF

Return

/*ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÚÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±
±±³Programa ³ C() ³ Autores ³ Norbert/Ernani/Mansano ³ Data ³10/05/2005³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±
±±³Descricao ³ Funcao responsavel por manter o Layout independente da ³±±
±±³ ³ resolucao horizontal do Monitor do Usuario. ³±±
±±ÀÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß*/
Static Function C(nTam)
Local nHRes := oMainWnd:nClientWidth // Resolucao horizontal do monitor
If nHRes == 640 // Resolucao 640x480 (soh o Ocean e o Classic aceitam 640)
nTam *= 0.8
ElseIf (nHRes == 798).Or.(nHRes == 800) // Resolucao 800x600
nTam *= 1
Else // Resolucao 1024x768 e acima
nTam *= 1.28
EndIf

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³Tratamento para tema "Flat"³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
If "MP8" $ oApp:cVersion
If (Alltrim(GetTheme()) == "FLAT") .Or. SetMdiChild()
nTam *= 0.90
EndIf
EndIf
Return Int(nTam)

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.090 segundos
Joomla templates by a4joomla