Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    207

    [java/JInternalFrame] Problema con metodo setSelected()

    Quando aggiungo una finestra al JDesktopPane metto sempre jinternalframe.setSelected(true)
    per far essere selezionata l'ultima finestra aggiunta.
    Pero' ho un problema:
    se apro una finestra, la chiudo e poi la riapro mi si vede a tutto schermo.mentre se (una volta che e' ridotta a tutto scherma) la riduco a icona e poi la ripristino torna tutto ok.
    Non so se mi sono spiegato bene ma se qualcuno ha avuto lo stesso prob mi sa dire come l'ha risolto?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Uhm... anche un mio amico aveva lo stesso problema. Dovresti essere più preciso riguardo la struttura usata (annidamento di oggetti, layout manager settati, ecc). Se posti un po' la struttura della classe (o delle classi) possiamo vedere se c'è qualche problema risolvibile.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    207
    potrebbe essere che come layout manager ho messo null ed ho usato setBound per posizionare gli elementi?????

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    No. Quello va bene. Il problema è che non dovresti far sì che quando le finestre vengono chiuse i relativi oggetti vengano distrutti (posti a null). Io ho risolto il problema facendo in modo che, all'operazione di close, le finestre vengano rese invisibili:
    codice:
    // Codice del JInternalFrame
    setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
    E quando vengono "riaperte" vengano rese visibili:
    codice:
    // Codice che apre il JInternalFrame:
    finestra.show();
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.