• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

A maximizable dialog with a parent in Swing

 
Greenhorn
Posts: 3
  • Number of slices to send:
    Optional 'thank-you' note:
I'm collaborating on a mature desktop Swing application

A customer wants a dialog that:

1. Has a maximize button in the corner (I assume, the other standard frame buttons too, minimize and close)
2. Has a relationship with the "root frame". For example, the root frame shouldn't be minimizable while the dialog is still visible

I reimplemented the dialog, which used to be a `JDialog`, to be a `JFrame` subclass. It solved the first problem, but now it's totally oblivious to any root frames at all as `JFrame`s don't have parents

They [say][1] adding a maximize button to a `JDialog` is possible but not a good idea (though, I'm not sure why). The app is used in medical facilities, I don't want to take any chances

How do I meet the customer's expectations?


 [1]: https://stackoverflow.com/a/3897958/23539854
 
Saloon Keeper
Posts: 10779
86
  • Number of slices to send:
    Optional 'thank-you' note:
If you extend JFrame and allow it to take a "parent" parameter it should work.
 
Saloon Keeper
Posts: 27851
196
  • Number of slices to send:
    Optional 'thank-you' note:
Welcome to the Ranch, R.S.!

Dialogs generally don't have a GUI parent (as opposed to a logical parent) because that would constrain them to always fit inside their parent window. Likewise, maximize/minimize isn't common, since when a dialog is presented, it is expected to be the most important thing on the screen.

A Modal Dialog blocks all messages to the rest of the app. A Modeless Dialog is more interactive, such as showing progress of an app process, but Swing isn't as concerned with modal/modeless as some systems are. A modeless dialog equivalent is probably best presented in a child frame window, in which case the resizing gadgets come for free.
 
Real Sergey Zolotaryov
Greenhorn
Posts: 3
  • Number of slices to send:
    Optional 'thank-you' note:

Carey Brown wrote:If you extend JFrame and allow it to take a "parent" parameter it should work.



But JFrames don't have parents, do they?
 
Real Sergey Zolotaryov
Greenhorn
Posts: 3
  • Number of slices to send:
    Optional 'thank-you' note:

Tim Holloway wrote:Welcome to the Ranch, R.S.!

Dialogs generally don't have a GUI parent (as opposed to a logical parent) because that would constrain them to always fit inside their parent window. Likewise, maximize/minimize isn't common, since when a dialog is presented, it is expected to be the most important thing on the screen.

A Modal Dialog blocks all messages to the rest of the app. A Modeless Dialog is more interactive, such as showing progress of an app process, but Swing isn't as concerned with modal/modeless as some systems are. A modeless dialog equivalent is probably best presented in a child frame window, in which case the resizing gadgets come for free.



Can I somehow achieve my goal?
 
reply
    Bookmark Topic Watch Topic
  • New Topic
vceplus-200-125    | boson-200-125    | training-cissp    | actualtests-cissp    | techexams-cissp    | gratisexams-300-075    | pearsonitcertification-210-260    | examsboost-210-260    | examsforall-210-260    | dumps4free-210-260    | reddit-210-260    | cisexams-352-001    | itexamfox-352-001    | passguaranteed-352-001    | passeasily-352-001    | freeccnastudyguide-200-120    | gocertify-200-120    | passcerty-200-120    | certifyguide-70-980    | dumpscollection-70-980    | examcollection-70-534    | cbtnuggets-210-065    | examfiles-400-051    | passitdump-400-051    | pearsonitcertification-70-462    | anderseide-70-347    | thomas-70-533    | research-1V0-605    | topix-102-400    | certdepot-EX200    | pearsonit-640-916    | itproguru-70-533    | reddit-100-105    | channel9-70-346    | anderseide-70-346    | theiia-IIA-CIA-PART3    | certificationHP-hp0-s41    | pearsonitcertification-640-916    | anderMicrosoft-70-534    | cathMicrosoft-70-462    | examcollection-cca-500    | techexams-gcih    | mslearn-70-346    | measureup-70-486    | pass4sure-hp0-s41    | iiba-640-916    | itsecurity-sscp    | cbtnuggets-300-320    | blogged-70-486    | pass4sure-IIA-CIA-PART1    | cbtnuggets-100-101    | developerhandbook-70-486    | lpicisco-101    | mylearn-1V0-605    | tomsitpro-cism    | gnosis-101    | channel9Mic-70-534    | ipass-IIA-CIA-PART1    | forcerts-70-417    | tests-sy0-401    | ipasstheciaexam-IIA-CIA-PART3    | mostcisco-300-135    | buildazure-70-533    | cloudera-cca-500    | pdf4cert-2v0-621    | f5cisco-101    | gocertify-1z0-062    | quora-640-916    | micrcosoft-70-480    | brain2pass-70-417    | examcompass-sy0-401    | global-EX200    | iassc-ICGB    | vceplus-300-115    | quizlet-810-403    | cbtnuggets-70-697    | educationOracle-1Z0-434    | channel9-70-534    | officialcerts-400-051    | examsboost-IIA-CIA-PART1    | networktut-300-135    | teststarter-300-206    | pluralsight-70-486    | coding-70-486    | freeccna-100-101    | digitaltut-300-101    | iiba-CBAP    | virtuallymikebrown-640-916    | isaca-cism    | whizlabs-pmp    | techexams-70-980    | ciscopress-300-115    | techtarget-cism    | pearsonitcertification-300-070    | testking-2v0-621    | isacaNew-cism    | simplilearn-pmi-rmp    | simplilearn-pmp    | educationOracle-1z0-809    | education-1z0-809    | teachertube-1Z0-434    | villanovau-CBAP    | quora-300-206    | certifyguide-300-208    | cbtnuggets-100-105    | flydumps-70-417    | gratisexams-1V0-605    | ituonline-1z0-062    | techexams-cas-002    | simplilearn-70-534    | pluralsight-70-697    | theiia-IIA-CIA-PART1    | itexamtips-400-051    | pearsonitcertification-EX200    | pluralsight-70-480    | learn-hp0-s42    | giac-gpen    | mindhub-102-400    | coursesmsu-CBAP    | examsforall-2v0-621    | developerhandbook-70-487    | root-EX200    | coderanch-1z0-809    | getfreedumps-1z0-062    | comptia-cas-002    | quora-1z0-809    | boson-300-135    | killtest-2v0-621    | learncia-IIA-CIA-PART3    | computer-gcih    | universitycloudera-cca-500    | itexamrun-70-410    | certificationHPv2-hp0-s41    | certskills-100-105    | skipitnow-70-417    | gocertify-sy0-401    | prep4sure-70-417    | simplilearn-cisa    |
http://www.pmsas.pr.gov.br/wp-content/    | http://www.pmsas.pr.gov.br/wp-content/    |