Domanda

Ho questo dilemma sulla progettazione / programmazione di bordi o ampiezze di gap in una mia applicazione. Sto usando Swing ma questo è un tipo di agnostico di implementazione. Ho un riquadro di divisione (JXMultiSplitPane) che divide due sottopiani, mostrato di seguito delineato in nero; il bordo nero sparirà nella vera applicazione ed è qui solo per il debug.

Noterai che c'è un divario tra i due sottopiani. Questo è lo splitter, e deve essere abbastanza largo da aggrapparsi. Noterai anche il divario tra ogni tavolo e il bordo nero. Dovrebbe essere lì per aggiungere un po 'di spazio ragionevole ... tranne che se rimuovo i bordi neri, ora ho uno spazio tra i due tavoli che sembra 3 volte più largo di quanto dovrebbe essere.

Il mio istinto è di eliminare lo spazio sul lato destro del tavolo di sinistra e lo spazio sul lato sinistro del tavolo di destra, in modo che l'unico spazio sia lo splitter stesso. È questo il modo giusto di gestirlo? L'unica esitazione che ho è che potrei dare all'utente la possibilità di impilarli verticalmente, quindi la spaziatura effettiva del bordo della tabella di sinistra deve cambiare (la spaziatura adiacente allo splitter dovrebbe essere impostata su 0) e questo sembra strano. ...

https://farm3.static.flickr.com/2436/3792188681_21c2c80ae8.jpg

È stato utile?

Soluzione

Naturalmente il divario tra questi due pannelli deve essere solo splitter e nient'altro. Non c'è altro modo.

alt text http://img15.imageshack.us/img15/2250/myapp .png

Altri suggerimenti

Un'altra opzione sarebbe quella di rendere lo splitter visivamente distinto dalla "normale" sfondo, forse dandogli un aspetto rialzato.

In realtà mi sembra a posto. Aspetta e vedi se decidi sull'impilamento verticale e vedi come appare allora?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top