Página 1 de 1

Wvg_Image() ou Wvg_DrawImage() não carrega imagens WVGCRT()

Enviado: 09 Mar 2019 18:46
por microvolution
Alguém já passou por isso?
se usar o seguinte fora do wvgcrt() funciona:

Código: Selecionar todos

Wvg_Image     ( 01 , 01 , 08 , 29 ,  , GOBJ_IMAGESOURCE_FILE, TLogin , , .f. )
Já dentro de uma função que cria o WvgCrt() não funciona.
A minha WVG_CRT é basicamente a mesma coisa da pasta TESTS, só com algumas modificações:

Código: Selecionar todos

   WITH OBJECT oCrt := WvgCrt():New( , , { nTop , nLef }, { nBot , nRig }, , .t. )
      :lModal    := .t.
      :title     :=  cTit
      :icon      := "AppIcon"
      :resizable := .F.
      :closable  := .F.
      :minMax    := .F.
      :lbDblClick( )
      :create()
      :setColorFG(cCor)
   ENDWITH
      Wvg_Image     ( 01 , 01 , 08 , 29 ,  , GOBJ_IMAGESOURCE_FILE, TLogin , , .t. )
      Wvg_DrawImage ( 1, 1, 10, 10, TLogin, , .f. )
Talvez esteja faltando alguma outra peça pra funcionar, que eu não vi no demowvg.prg.

Wvg_Image() ou Wvg_DrawImage() não carrega imagens WVGCRT()

Enviado: 10 Mar 2019 19:41
por JoséQuintas
Realmente....
Agora que estou vendo, que a wvg original pode ser limitada.
Geralmente ao criar um objeto GUI, é indicado o hWnd da janela que vai receber o objeto.
Se wvgImage() não tem isso, é tentar executá-la com o foco na janela wvgCrt().

Tentando traduzir:

A janela principal da wvg é uma janela... óbvio.
WvgCrt() é outra janela.
Ao colocar a imagem, vai colocar em qual das janelas?
Sinceramente não sei como a wvg decide, se usar a janela atual como referência, o comando deve ser executado depois do foco ficar em wvgCrt()

Como desde o começo uso multithread, no final todas as minhas janelas são principais, nem sei como seria o uso de wvgCrt().
Se não me engano, nos exemplos tem o uso de SetGt() que é uma função que está dentro do exemplo, pra trocar a GT em uso. (equivalente a trocar janela). Se nos exemplos funciona, então é fazer igual nos exemplos.