BUTTON vs BTNBMP
Moderator: Enrico Maria Giordano
BUTTON vs BTNBMP
Ciao Enrico e a tutti e ben tornati....
ho un problemino, per te piccolo:
ho sostituito in un programma le BUTTON con le BTNBMP poiche' potevo colorarle ed erano piu' carine.
Ho notato pero' che il relativo btnbmp non funziona in uscita da una dialog se la get ove e' posizionato il focus non viene completata.
ti allego un esempio minimale x verifica.
Lancialo e lasciando il campo vuoto, prova ad uscire cliccando su BTNBMP, VEDRAI CHE NON FA NIENTE.
grazie
Romeo/Zingoni
#include "FiveWin.ch"
*
function Main()
local oDlg,obut,obtn
local pippo:= space(40)
DEFINE DIALOG oDlg TITLE "Prova" from 0,0 to 250,350 pixel
@10,10 SAY "Lasciare vuoto il campo e cliccare su USCITA" OF oDlg pixel
@28,10 GET pippo OF oDlg pixel valid ! empty(pippo)
@60,10 BUTTON obut prompt "Uscita: qui esce con BUTTON" OF oDlg ;
ACTION oDlg:End() CANCEL pixel size 100,20
@90,10 BTNBMP obtn prompt "Uscita: qui non esce con BTNBMP" OF oDlg ;
ACTION oDlg:End() CANCEL pixel size 100,20
ACTIVATE DIALOG oDlg CENTERED
return nil
ho un problemino, per te piccolo:
ho sostituito in un programma le BUTTON con le BTNBMP poiche' potevo colorarle ed erano piu' carine.
Ho notato pero' che il relativo btnbmp non funziona in uscita da una dialog se la get ove e' posizionato il focus non viene completata.
ti allego un esempio minimale x verifica.
Lancialo e lasciando il campo vuoto, prova ad uscire cliccando su BTNBMP, VEDRAI CHE NON FA NIENTE.
grazie
Romeo/Zingoni
#include "FiveWin.ch"
*
function Main()
local oDlg,obut,obtn
local pippo:= space(40)
DEFINE DIALOG oDlg TITLE "Prova" from 0,0 to 250,350 pixel
@10,10 SAY "Lasciare vuoto il campo e cliccare su USCITA" OF oDlg pixel
@28,10 GET pippo OF oDlg pixel valid ! empty(pippo)
@60,10 BUTTON obut prompt "Uscita: qui esce con BUTTON" OF oDlg ;
ACTION oDlg:End() CANCEL pixel size 100,20
@90,10 BTNBMP obtn prompt "Uscita: qui non esce con BTNBMP" OF oDlg ;
ACTION oDlg:End() CANCEL pixel size 100,20
ACTIVATE DIALOG oDlg CENTERED
return nil
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: BUTTON vs BTNBMP
Compilando il tuo esempio ottengo:
Da cui deduco che nel comando @ riga, colonna BTNBMP non sono supportate le clausole CANCEL e PIXEL.
EMG
Code: Select all
test.prg(19) Warning W0001 Ambiguous reference: 'PIXEL'
test.prg(19) Warning W0001 Ambiguous reference: 'CANCEL'
EMG
Re: BUTTON vs BTNBMP
Quindi non e' possibile uscire da una dialog con un bottone BTNBMP ?
GRAZIE
GRAZIE
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: BUTTON vs BTNBMP
Certo che è possibile: basta mettere
nella definizione del BTNBMP.
EMG
Code: Select all
ACTION oDlg:End()
EMG
Re: BUTTON vs BTNBMP
A RIECCOTI L'ESEMPIO MODIFICATO E NON MI FUNZIONA, cioe' non riesco ad uscire con il campo vuoto, clikkando sul bottone:
Ti ho anche mandato il file EXE (zippato) in mail.
***************
*
#include "FiveWin.ch"
*
function Main()
local oDlg,obut
local pippo:= space(40)
DEFINE DIALOG oDlg TITLE "Prova" from 0,0 to 250,350 pixel
@10,10 SAY "lasciare vuoto il campo e cliccare su USCITA" OF oDlg pixel
@28,10 GET pippo OF oDlg pixel valid ! empty(pippo)
@90,10 BTNBMP obtn prompt "Uscita: qui non esce con BTNBMP" OF oDlg ;
ACTION oDlg:End() pixel size 100,20
ACTIVATE DIALOG oDlg CENTERED
return nil
*
*********************
Grazie
Ti ho anche mandato il file EXE (zippato) in mail.
***************
*
#include "FiveWin.ch"
*
function Main()
local oDlg,obut
local pippo:= space(40)
DEFINE DIALOG oDlg TITLE "Prova" from 0,0 to 250,350 pixel
@10,10 SAY "lasciare vuoto il campo e cliccare su USCITA" OF oDlg pixel
@28,10 GET pippo OF oDlg pixel valid ! empty(pippo)
@90,10 BTNBMP obtn prompt "Uscita: qui non esce con BTNBMP" OF oDlg ;
ACTION oDlg:End() pixel size 100,20
ACTIVATE DIALOG oDlg CENTERED
return nil
*
*********************
Grazie
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: BUTTON vs BTNBMP
Sì, ora ho capito cosa intendevi. No, che io sappia non esiste la clausola CANCEL per i BTNBMP e quindi non puoi uscire da una dialog se c'è un campo obbligatiorio non riempito.
EMG
EMG
Re: BUTTON vs BTNBMP
Sigh !!
Tks
Tks
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: BUTTON vs BTNBMP
Magari c'è qualche escamotage che a me non viene in mente. Prova a chiedere nel forum in inglese.
EMG
EMG
Re: BUTTON vs BTNBMP
Prova ad aggiungere questa riga dopo il controllo BTNBMP
Ciao
Massimo
Code: Select all
@90,10 BTNBMP obtn prompt "Uscita: qui non esce con BTNBMP" OF oDlg ;
ACTION oDlg:End() pixel size 100,20
oBtn:lCancel := .T.
Massimo