Autore Topic: form ridimensionabile ma senza bordo  (Letto 836 volte)

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
form ridimensionabile ma senza bordo
« il: 15 Giugno 2018, 12:43:35 »
se faccio un form con le proprieta': border=true e resizable=true allora posso scalare la finestra senza aggiungere codice.
ma se metto border=false, il sistema operativo probabilemnte non intercetta il mouse sui bordi/angoli della finestra e quindi nessun resize ....

in pratica mi serve di poter eliminare il bordo alto della finestra e magari di poter fare la finestra con il fondo trasparente ... vorrei fare dei widget fighi :D

PS: da questa ricerca: http://www.gambas-it.org/smf/index.php?topic=2597.msg27491#msg27491 ho messo una png 10x10 trasparente come sfondo e mask a true .. ma vedo tutto nero nel form ....
« Ultima modifica: 15 Giugno 2018, 12:49:26 da allegfede »
se corri, morirai stanco (motto degli sniper)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.239
  • Tonno verde
    • Mostra profilo
Re:form ridimensionabile ma senza bordo
« Risposta #1 il: 15 Giugno 2018, 14:04:28 »
Non ho capito cosa vuoi fare esattamente.
Se desideri far vedere un'immagine come se fosse una finestra, devi creare una finestra trasparente e senza bordo, dove andrai a mettere una PictureBox che conterrà l'immagine che vuoi mostrare al posto della finestra.
Dai il bordo all'immagine con Expand a true e Fill all'arrangment della finestra e ti si dovrebbe ridimensionare, almeno credo.

 :ciao: :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
Re:form ridimensionabile ma senza bordo
« Risposta #2 il: 18 Giugno 2018, 13:28:47 »
voglio fare un rettangolo con fondo trasparente (a richiesta), in cui il bordo (generalmente la barra del titolo) non sia visibile.

questo "rettangolo" mi serve come superficie per disegnarci varie cose.
Come primo test un semplice orologio analogico
ed uno digitale

poi l'idea e' di farne uno per le previsioni del tempo ed un altro per le news (rss).

Vorrei fare dei widget che si possano posizionare sullo schermo trascinandoli e ridimensionabili a piacimento in pratica.

in un tutorial si diceva (quello che avevo capito io in realta' almeno) che mettendo come sfondo della finestra QT una png trasparente, questa, poteva fare da maschera per la finestra stessa, e far risultare trasparente le zone senza con alfa al 100% ... (con mask on). Ma forse ho interpretato io la proprieta' ... :-(
se corri, morirai stanco (motto degli sniper)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.721
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:form ridimensionabile ma senza bordo
« Risposta #3 il: 18 Giugno 2018, 13:59:27 »
Codice: [Seleziona]
Public Sub Form_Activate()

  Me.Border = False
  Me.Opacity = 0

End


Per vedere l'effetto:
Codice: [Seleziona]
Public Sub Form_Activate()

  Dim i as Integer

  Me.Border = False
 
  For i = 0 To 100
    Me.Opacity = i
    Wait 0.2
  Next

End
« Ultima modifica: 18 Giugno 2018, 21:35:57 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.239
  • Tonno verde
    • Mostra profilo
Re:form ridimensionabile ma senza bordo
« Risposta #4 il: 19 Giugno 2018, 14:11:12 »
voglio fare un rettangolo con fondo trasparente (a richiesta), in cui il bordo (generalmente la barra del titolo) non sia visibile.

questo "rettangolo" mi serve come superficie per disegnarci varie cose.
Come primo test un semplice orologio analogico
ed uno digitale

poi l'idea e' di farne uno per le previsioni del tempo ed un altro per le news (rss).

Vorrei fare dei widget che si possano posizionare sullo schermo trascinandoli e ridimensionabili a piacimento in pratica.

in un tutorial si diceva (quello che avevo capito io in realta' almeno) che mettendo come sfondo della finestra QT una png trasparente, questa, poteva fare da maschera per la finestra stessa, e far risultare trasparente le zone senza con alfa al 100% ... (con mask on). Ma forse ho interpretato io la proprieta' ... :-(

Così dovrebbe funzionare anche con le qt5, vedi file allegato.

 :ciao: :ciao:

PS: Mettere il background del panel a trasparente non serviva.
Scusa sono un po distratto dal mondiale  ;D
« Ultima modifica: 19 Giugno 2018, 16:07:34 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.239
  • Tonno verde
    • Mostra profilo
Re:form ridimensionabile ma senza bordo
« Risposta #5 il: 19 Giugno 2018, 19:23:18 »

Vorrei fare dei widget che si possano posizionare sullo schermo trascinandoli e ridimensionabili a piacimento in pratica.


Una cosa tipo questa?
(vedi allegato)

 :ciao: :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
Re:form ridimensionabile ma senza bordo
« Risposta #6 il: 09 Luglio 2018, 18:42:42 »
WOOOOOWWW

alt + pulsante mouse ..... e chi lo sapeva???

quando faccio quelle domande strane se esiste un metodo "elegante" o altro, in pratica e' proprio la ricerca di un "trucco" come questo suggerito da Gianluigi.
Perche' reinventare la ruota??????

Mitico!

per la trasparenza messo come ha fatto gianluigi:
background (vuoto)
trasparent (true)
masked(true)
picture(vuoto)

ora e' trasparente.

Ora lo devo fare ridimensionabile ... ma siamo a buon punto.

grazias a todos :D
« Ultima modifica: 09 Luglio 2018, 18:48:56 da allegfede »
se corri, morirai stanco (motto degli sniper)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.239
  • Tonno verde
    • Mostra profilo
Re:form ridimensionabile ma senza bordo
« Risposta #7 il: 10 Luglio 2018, 20:05:46 »
...
Ora lo devo fare ridimensionabile ... ma siamo a buon punto.

Sono fresco dal picchiarmi con Gambas in Ubuntu 18.04 che è ritornato al desktop Gnome che non avevo mai usato.
Ad esempio li per spostare la finestra occorre tener premuto il tasto Win (o Super che dir si voglia) invece di Alt e per ridimensionare occorre sempre tener premuto il tasto Win e cliccare col tasto destro del mouse per far apparire un menu a comparsa in cui scegliere Ridimensiona e poi... prenderci la mano  ;D

Insomma ogni ambiente grafico ha i suoi metodi per ridimensionare e la finestra trasparente di Widget lo è...

 :ciao: :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro