Attivare la finestra di un programma con le funzioni del API di X11

Da Gambas-it.org - Wikipedia.
Versione del 27 ott 2014 alle 06:26 di Vuott (Discussione | contributi) (Creata pagina con '''Attivare'' una finestra significa portarla al di sopra delle altre finestre presenti sul ''desktop'', attribuendole così il ''focus''. Per attivare, dunque, la finestra di...')

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Attivare una finestra significa portarla al di sopra delle altre finestre presenti sul desktop, attribuendole così il focus.

Per attivare, dunque, la finestra di un programma si può utilizzare la funzione XRaiseWindow() della libreria condivisa (nella sua attuale versione) libX11.so.6.3.0 .

Tale funzione esterna richiede, fra l'altro, la specificazione del numero identificativo della finestra del programma da chiudere.


Mostriamo un esempio essenziale:

Library "libX11:6.3.0"

' Display *XOpenDisplay(display_name)
' Opens a connection to the X server that controls a display.
Private Extern XOpenDisplay(displayP As Pointer) As Pointer

' XRaiseWindow(display, w)
' Raises the specified window to the top of the stack so that no sibling window obscures it.
Private Extern XRaiseWindow(displayP As Pointer, w As Integer) As Integer

' XCloseDisplay(display)
' Closes the connection to the X server for the display specified in the Display structure and destroys all windows.
Private Extern XCloseDisplay(displayP As Pointer)


Public Sub Main()

 Dim disp As Pointer

' Connessione al server X ed impostazione di default:
  disp = XOpenDisplay(0)

  XRaiseWindow(disp, num_ID_della_finestra)

' Chiude la libreria:
  XCloseDisplay(disp)

End



Riferimenti