Ciao a tutti...
Ho un problemino riguardante l'evento KeyPress. Ho fatto un programmino semplicissimo: una form, con una textbox e questo codice:
Public Sub TextBox1_KeyPress()
If Key.Code = Key.Return Then
Message("OK")
Endif
End
Avvio con F5 e tutto funziona come previsto: alla pressione di <invio> nella textbox, esce il messaggio.
Il problema è che, dopo aver compilato e creato l'eseguibile, se lancio il programma dall'eseguibile, la cosa non funziona! E' come se l'evento Keypress fosse sparito!
Qualcuno mi sa aiutare?
N.B. Come S.O. uso LinuxMint 18.1 con Cinnamon.
Dovresti provare usando entrambe le voci Return e Enter If Key.Code = Key.Return Or Key.Code = Key.Enter Then
Message("OK")
Endif
:ciao:
Probabilmente il mio suggerimento è inutile visto che nella IDE funziona, ma visto che tentar non nuoce...
Potrebbe anche provare a vedere cosa succede spostando il codice su Form invece che sulla TextBox:
Public Sub Form_KeyPress()
If Key.Code = Key.Return Then
Message("OK")
Endif
End
Mi ero dimenticato di dire che anche a me il codice funziona sia nella IDE che creando l'eseguibile.
:ciao: :ciao:
Allora... innanzitutto mi scuso se sono "sparito" per qualche giorno, ma ho avuto impegni personali che non mi hanno lasciato molto tempo libero.
Ecco le informazioni di sistema, come mi consigliava Gianluigi:
[System]
Gambas=3.8.4
OperatingSystem=Linux
Kernel=4.4.0-59-generic
Architecture=x86_64
Distribution=Linux Mint 18.1 Serena
Desktop=GNOME
Theme=Gtk
Language=it_IT.UTF-8
Memory=3881M
[Libraries]
Cairo=libcairo.so.2.11400.6
Curl=libcurl.so.4.4.0
DBus=libdbus-1.so.3.14.6
GStreamer=libgstreamer-0.10.so.0.30.0
GStreamer=libgstreamer-1.0.so.0.802.0
GTK+2=libgtk-x11-2.0.so.0.2400.30
GTK+3=libgtk-3.so.0.1800.9
OpenGL=libGL.so.1.2.0
Poppler=libpoppler.so.58.0.0
QT4=libQtCore.so.4.8.7
QT5=libQt5Core.so.5.5.1
SDL=libSDL-1.2.so.0.11.4
[Environment]
CINNAMON_VERSION=3.2.7
CLUTTER_IM_MODULE=xim
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-5mnlvae45Y,guid=2c2dcef10a6e6b10ca91a1e8587f2565
DEFAULTS_PATH=/usr/share/gconf/cinnamon.default.path
DESKTOP_SESSION=cinnamon
DISPLAY=:0
GB_GUI=gb.qt5
GDMSESSION=cinnamon
GDM_XSERVER_LOCATION=local
GIO_LAUNCHED_DESKTOP_FILE=/usr/share/applications/gambas3.desktop
GIO_LAUNCHED_DESKTOP_FILE_PID=3489
GJS_DEBUG_OUTPUT=stderr
GJS_DEBUG_TOPICS=JS ERROR;JS LOG
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
GTK_IM_MODULE=xim
GTK_MODULES=gail:atk-bridge
GTK_OVERLAY_SCROLLING=1
HOME=<home>
LANG=it_IT.UTF-8
LC_ADDRESS=it_IT.UTF-8
LC_IDENTIFICATION=it_IT.UTF-8
LC_MEASUREMENT=it_IT.UTF-8
LC_MONETARY=it_IT.UTF-8
LC_NAME=it_IT.UTF-8
LC_NUMERIC=it_IT.UTF-8
LC_PAPER=it_IT.UTF-8
LC_TELEPHONE=it_IT.UTF-8
LC_TIME=it_IT.UTF-8
LOGNAME=<user>
MANDATORY_PATH=/usr/share/gconf/cinnamon.mandatory.path
MDMSESSION=cinnamon
MDM_LANG=it_IT.UTF-8
MDM_XSERVER_LOCATION=local
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
PWD=<home>
QT4_IM_MODULE=xim
QT_ACCESSIBILITY=1
QT_IM_MODULE=compose
QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1
QT_QPA_PLATFORMTHEME=qgnomeplatform
QT_STYLE_OVERRIDE=gtk
SESSION_MANAGER=local/<hostname>:@/tmp/.ICE-unix/1225,unix/<hostname>:/tmp/.ICE-unix/1225
SHELL=/bin/bash
SSH_AGENT_PID=1305
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
TZ=:/etc/localtime
USER=<user>
USERNAME=<user>
WINDOWPATH=7
XAUTHORITY=<home>/.Xauthority
XDG_CONFIG_DIRS=/etc/xdg/xdg-cinnamon:/etc/xdg
XDG_CURRENT_DESKTOP=X-Cinnamon
XDG_DATA_DIRS=/usr/share/cinnamon:/usr/share/gnome:/usr/local/share/:/usr/share/:/usr/share/mdm/
XDG_RUNTIME_DIR=/run/user/1000
XDG_SEAT=seat0
XDG_SESSION_COOKIE=2a5d5f96ef9147c0b35535562b32d0ff-1484727651.178712-1895066874
XDG_SESSION_DESKTOP=cinnamon
XDG_SESSION_ID=c1
XDG_VTNR=7
XMODIFIERS=@im=none
Quanto ai componenti, non ne ho aggiunti rispetto a quelli di default:
gb
gb.form
gb.gui
gb.image
Se fai così va benissimo, e non perdi niente (leggi il post successivo)
Anche io ho le QT5 su Ubuntu, ma anche le QT4 e QT Configuration l'ho installato e mi funziona.
Però ti conviene aspettare il parere di Vuott che lui ha Mint come te e lo sa senz'altro.
Se fai la prova per i tooltip e cioè provi a cercare nell'IDE di Gambas una parola che non esiste riesci a leggere il Balloon di risposta?
Noto solo ora (scusa) che hai installata una versione vecchia di Gambas (3.8.4).
Se non hai particolari ragioni per avere quella versione io ti consiglierei di installarti l'ultima stabile la 3.9.2.
È anche scritto nella discussione che ti ho indicato ma conviene ripetere i passaggi:
Se lo vuoi fare per prima cosa devi eliminare la tua attuale versione di Gambas:
Apri il terminale e digita (ricopia) il seguente comando che darai come utente user ($):
Attenzione: Come precauzione ti conviene salvare facendone il backup i progetti Gambas da te fatti.
La password sembra che il terminale non la prenda tu digitala tutta precisa e poi da invio.
sudo apt-get –purge remove gambas3*
Quindi come suggerito dalla documentazione (http://gambaswiki.org/wiki/install/ubuntu) di Gambas dai i seguenti comandi:
sudo add-apt-repository ppa:gambas-team/gambas3
sudo apt-get update
sudo apt-get install gambas3