brannslange Skrevet 25. april 2004 Del Skrevet 25. april 2004 Hei, Noen som vet hvordan får jeg et java vindu (JFrame) til å vises konstant over alle andre java vinduer (JFrames), uansett hva brukeren klikker på? Altså på toppen av alle andre vinduer? Lenke til kommentar
Rolf_OLE Skrevet 26. april 2004 Del Skrevet 26. april 2004 Høres ut som du trenger et modalt dialogvindu... JDialog (set modal true i konstruktøren) og hvis du skal ha enkel input fra brukeren kan jeg anbefale JOptionPane -Stig, Lenke til kommentar
Hårek Skrevet 26. april 2004 Del Skrevet 26. april 2004 Det er en metode i awt.Window som heter toFront(). Problemet er at vinduet bare legges forrest akkurat i det du gjør kallet, det kan jo skje mye i andre vinduer etterpå som dekker det til. Løsningen kan være å lage en enkel thread som kjører en timer, og kalle toFront() kontinuerlig. Lenke til kommentar
Frank2004 Skrevet 26. april 2004 Del Skrevet 26. april 2004 Med 1.5 kan du prøve Window.setAlwaysOnTop(true). Lenke til kommentar
brannslange Skrevet 26. april 2004 Forfatter Del Skrevet 26. april 2004 Først og fremst, takk for svarene! setFront() metoden fungerte forsåvidt greit den, problemet var at den etter en stund tok fullstendig kontroll over windows og la seg over alle vinduene som fantes i det uendelige. Det hele endte faktisk i en skikkelig java krasj og en feilmelding jeg aldri har fått før.. Det ble litt bedre etter at jeg satt ned hastigheten mellom hver gang toFront() ble kalt, men desverre fikset det ikke alle problemene. Har ikke sett så alt for mye på JDialog, men innbiller meg at den fungerer mer som en varslingsboks som spretter fram hvis det skjer noe feil eller når det ellers er nødvendig. Er interessert i en JFrame jeg kan forandre med så mye jeg trenger. Som å sette bakgrunnsfarge, størrelse, layout, vindusdekorasjon, osv.. Denne JFramen skal settes over en annen (og litt større JFrame) og det skal ikke være mulig og komme tilbake til den forrige JFramen uten at denne jeg holder på med avsluttes først (den lille altså). Andre windows-programmer og vinduer kan gjerne komme over den. Versjon 1.5 tror ikke jeg tør å begi meg utpå enda, ettersom jeg holder på med et prosjekt sammen med flere andre persjoner. Vet ikke om det er så smart om vi benytter ulike versjoner.. Lenke til kommentar
Hårek Skrevet 26. april 2004 Del Skrevet 26. april 2004 ... og det skal ikke være mulig og komme tilbake til den forrige JFramen uten at denne jeg holder på med avsluttes først (den lille altså). ... Det er jo slik en modal JDialog virker. Du kan bruke en JDialog til mye mer enn bare de statiske meldingsboksene. Du bør ta en nærmere titt. How to Make Dialogs Lenke til kommentar
brannslange Skrevet 28. april 2004 Forfatter Del Skrevet 28. april 2004 Hmm, jeg hadde fra før av laget en JFrame, bestående av et JPanel som jeg tegnet en del grafikk på, via drawString() og drawImage() som fikk sine graphics objekter fra paint() metoden. Finnes det en enkel måte å konvertere denne klassen til en JDialog? Lenke til kommentar
threiran Skrevet 28. april 2004 Del Skrevet 28. april 2004 Høres ut som du trenger et modalt dialogvindu... JDialog (set modal true i konstruktøren) med den underliggende JFrame'en som owner. Deretter er det vel bare å hinte om at JDialog er en del av det vanlige awt treet, så add metoden funker som forventet... mvh CPL Lenke til kommentar
brannslange Skrevet 28. april 2004 Forfatter Del Skrevet 28. april 2004 (endret) Fikk nå det til å virke til slutt. Mulig det ikke var noe god ide å lage en klasse som utvidet JDialog og overkjørte paint() metoden dens? Fikk samme flimringen i skjermen som en får om en utvider JFrame klassen på samme måte, dvs hvite striper som drar seg over vinduet. Endret 28. april 2004 av brannslange Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå