Ola para todos.
É certo afirmar que: para todos os programas que são executados pelo Windows, existe um posicionamento inicial para as janelas deste aplicativo. Normalmente estes posicionamentos são gravadas em um arquivo xxxx.INI ou ainda no regedit do windows, que veio para substituir os arquivos INI. Quando não existe um arquivo INI apropriado para o aplicativo que esta sendo executado, é assumido um valor DEFAULT para o posicionamento desta janela.
Sei que o forms posiciona suas janelas com valores default, mas sei também que as mesmas podem ser modificadas, como por exemplo:
No meu local de trabalho existem dois equipamentos com o FORMS 6i instalados e, cada um, tem uma posição diferenciada para as suas janelas (Objetc Navigator, Property Pallete, e as janelas de CANVASES), então eu pergunto:
alguém sabe, de qual forma, eu posso reposicionar estas janelas, para que as mesmas assumam os valores que eu informar, quer seja através do editor de registros do windows, ou ainda de arquivos INI?
Agradeço a todos.
Posicionamento das Janelas do Forms
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Brother,
Tentou executar o comando SET_WINDOW_PROPERTY?
Existe um exemplo no próprio forms, quando você procura por FIND_WINDOW:
Aqui na empresa, para "Fixar" esses valores, utilizamos uma tabela de parâmetros.
Eu creio que fica mais simples do que buscar os valores em arquivo texto (à não ser que, para cada determinada máquina você tenha que ter valores diferentes).
Mas, mesmo com máquinas diferentes, tem como você pegar pelo dicionário de dados o nome da máquina e, inserir linhas específicas na tabela para essas máquinas.
Em posse desse valor, você pode setar teu SET_WINDOW_PROPERTY, x_pos e y_pos.
Qualquer dúvida, manda pra gente beleza?
Tentou executar o comando SET_WINDOW_PROPERTY?
Existe um exemplo no próprio forms, quando você procura por FIND_WINDOW:
/*
** Built-in: FIND_WINDOW
** Example: Anchor the upper left corner of window2 at the
** bottom right corner of window1.
*/
PROCEDURE Anchor_Bottom_Right( Window2 VARCHAR2, Window1
VARCHAR2) IS
wn_id1 Window;
wn_id2 Window;
x NUMBER;
y NUMBER;
w NUMBER;
h NUMBER;
BEGIN
/* ** Find Window1 and get its (x,y) position, width,
** and height.
*/
wn_id1 := Find_Window(Window1);
x := Get_Window_Property(wn_id1,X_POS);
y := Get_Window_Property(wn_id1,Y_POS);
w := Get_Window_Property(wn_id1,WIDTH);
h := Get_Window_Property(wn_id1,HEIGHT);
/*
** Anchor Window2 at (x+w,y+h)
*/
wn_id2 := Find_Window(Window2);
Set_Window_Property(wn_id2,X_POS, x+w );
Set_Window_Property(wn_id2,Y_POS, y+h );
END;
Eu creio que fica mais simples do que buscar os valores em arquivo texto (à não ser que, para cada determinada máquina você tenha que ter valores diferentes).
Mas, mesmo com máquinas diferentes, tem como você pegar pelo dicionário de dados o nome da máquina e, inserir linhas específicas na tabela para essas máquinas.
Em posse desse valor, você pode setar teu SET_WINDOW_PROPERTY, x_pos e y_pos.
Qualquer dúvida, manda pra gente beleza?
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 24 visitantes