Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
CONVERT COORDINATES
|
CONVERT COORDINATES ( xCoord ; yCoord ; de ; para ) | ||||||||
Parâmetro | Tipo | Descrição | ||||||
xCoord | Variável inteiro longo |
![]() |
Coordenada horizontal de um ponto (Inicial) | |||||
![]() |
Coordenada horizontal de um ponto (Convertida) | |||||||
yCoord | Variável inteiro longo |
![]() |
Coordenada vertical de um ponto (inicial) | |||||
![]() |
Coordenada vertical de um ponto (convertida) | |||||||
de | Inteiro longo |
![]() |
Sistema de coordenadas que vai ser convertido | |||||
para | Inteiro longo |
![]() |
Sistema de coordenadas para o qual vai converter | |||||
O comando CONVERT COORDINATESconverte as coordenadas (x;y) de um ponto de um sistema de coordenadas para outro. Os sistemas de coordenada de entrada e saída compatíveis são formulários e subformulários, janelas e a tela. Por exemplo, pode usar este comando para obter as coordenadas no formulário principal de um objeto que pertence a um subformulário. Isso faz com que seja fácil criar um menu contextual para qualquer posição personalizada.
Em xCoord e yCoord, passe como variávies as coordenadas (x;y) do ponto que quiser converter. Após o comando ser executado, estas variáveis conterão os valores convertidos.
No parâmetro de, passe o sistema de coordenadas inicial que o ponto de input está usando, e no parâmetro para, passe o sistema de coordenadas para o qual vai converter. Ambos parâmetros podem tomar um dos valores de constante abaixos, adicionados ao tema "Janela":
Constante | Tipo | Valor | Comentário |
XY Current form | Inteiro longo | 1 | A origen é o canto superior esquerdo do formulário atual |
XY Current window | Inteiro longo | 2 | A origem é a esquina superior esquerda na janela atual |
XY Main window | Inteiro longo | 4 | Em Windows: origem é a esquina superior esquerda da janela principal; em OS X: igual que XY Screen |
XY Screen | Inteiro longo | 3 | A origem é o canto superior esquerdo na tela principal (igual que para o comando SCREEN COORDINATES) |
Quando este comando for chamado a partir do método de um subformulário ou de um objeto de subformulário, e se um dos seletores for XY Current form, então as coordenadas são relativas ao próprio subformulário, e não ao seu formulário pai.
Quando convertendo de/para a posição de uma janela formulário (por exemplo quando convertendo dos resultados de GET WINDOW RECT, ou para valores passados a Open form window), XY Main window deve ser usado já que é o sistema de coordenadas usado pelos comandos de janela em Windows. Também pode ser usado para esse propósito em OS X, onde é equivalente a XY Screen.Quando de for XY Current form e o ponto estiver na seção corpo do formulário lista, o resultado depende do contexto de chamada do comando:
Se quiser abrir um menu pop-up no canto esquerdo inferior do objeto "MyObject".
// OBJECT GET COORDINATES trabalha no formulário atual das coordenadas do sistema
// Menu dinâmico pop up usa as coordenadas de sistema da janela atual
// Precisa converter os valores
C_LONGINT($left;$top;$right;$bottom)
C_TEXT($menu)
OBJECT GET COORDINATES(*;"MyObject";$left;$top;$right;$bottom)
CONVERT COORDINATES($left;$bottom;XY Current form;XY Current window)
$menu:=Create menu
APPEND MENU ITEM($menu;"Right here")
APPEND MENU ITEM($menu;"Right now")
Dynamic pop up menu($menu;"";$left;$bottom)
RELEASE MENU($menu)
Se quiser abrir uma janela pop-up na posição do cursor do mouse, em Windows, precisa converter as coordenadas desde GET MOUSE (com o parâmetro *) retorna valores baseados na posição da janela MDI:
C_LONGINT($mouseX;$mouseY;$mouseButtons)
C_LONGINT($window)
GET MOUSE($mouseX;$mouseY;$mouseButtons)
CONVERT COORDINATES($mouseX;$mouseY;XY Current window;XY Main window)
$window:=Open form window("PopupWindowForm";Pop up form window;$mouseX;$mouseY)
DIALOG("PopupWindowForm")
CLOSE WINDOW($window)
GET WINDOW RECT
OBJECT GET COORDINATES
OBJECT SET COORDINATES
SET WINDOW RECT
Produto: 4D
Tema: Janelas
Número
1365
Criado por: 4D v15 R3
Manual de linguagem 4D ( 4D v19)
Manual de linguagem 4D ( 4D v19.1)
Manual de linguagem 4D ( 4D v19.4)
Manual de linguagem 4D ( 4D v19.5)
Manual de linguagem 4D ( 4D v19.6)
Manual de linguagem 4D ( 4D v19.7)
Manual de linguagem 4D ( 4D v19.8)