xarda Δημοσ. 23 Αυγούστου 2018 Δημοσ. 23 Αυγούστου 2018 Χρησιμοποιω την SWING στον eclipse για Java και εχω ενα GUI όπου θελω απλά σε ενα Text box (ειτε ειναι JTextField είτε JLabel ειτε οτιδηποτε αλλο...) να εμφανίζω κεντραρισμένα ( Horizontally Alignment = Center ) ΚΑΙ να μπορώ να αλλάζω σειρά (με απλή χρήση του χαρακτήρα "\n"). Το θέμα είναι οτι με τα components που έχει στο pallete της Swing μπορεί να γίνει ή το ένα ή το άλλο και ποτε και τα δύο μαζί. Τι μπορώ να κάνω;;;
Lanike71 Δημοσ. 23 Αυγούστου 2018 Δημοσ. 23 Αυγούστου 2018 (επεξεργασμένο) H Swing παίρνει και χρήση html σε components. Δοκίμασες; https://stackoverflow.com/questions/30534583/how-to-use-html-in-swing Επεξ/σία 23 Αυγούστου 2018 από Lanike71
marios28 Δημοσ. 23 Αυγούστου 2018 Δημοσ. 23 Αυγούστου 2018 Και εδώ: https://stackoverflow.com/questions/6810581/how-to-center-the-text-in-a-jlabel
xarda Δημοσ. 23 Αυγούστου 2018 Μέλος Δημοσ. 23 Αυγούστου 2018 Δοκιμασα με html αλλα πάπαλα....Το JLabel απο την αλλη ειναι αποκλειστικα για μια εγγραφη μιας σειρας component...Μου φαινεται απιστευτο να μην υπαρχει ενα text component με τις δυο αυτες συναρτησεις....Τι αλλο μπορω να κανω;;;
Lanike71 Δημοσ. 23 Αυγούστου 2018 Δημοσ. 23 Αυγούστου 2018 Μπορείς να το κάνεις με html. Το <br> δε σου κάνει; Γιατί σώνει και καλά με \n ;
marios28 Δημοσ. 24 Αυγούστου 2018 Δημοσ. 24 Αυγούστου 2018 22 ώρες πριν, xarda είπε Δοκιμασα με html αλλα πάπαλα....Το JLabel απο την αλλη ειναι αποκλειστικα για μια εγγραφη μιας σειρας component... Τις απαντήσεις στο stackoverflow τις διάβασες;
xarda Δημοσ. 3 Σεπτεμβρίου 2018 Μέλος Δημοσ. 3 Σεπτεμβρίου 2018 Πραγματι αλλάζει σειρα και μπαίνει στο κέντρο το κείμενο.Ομως κατα την αλλαγη της σειράς το κείμενο τοποθετείται ναι μεν στο κέντρο του label ΑΛΛΑ στην αριστερή πλευρά του.Εγώ θελω να τοποθετείται ακριβώς στο κέντρο σε κάθε αλλαγής σειράς.Το ενα δηλαδη κάτω απο το άλλο στο κέντρο και όχι το ενα κάτω απο το αλλο αλλα στα αριστερά του.Τι λύση υπάρχει;;;
marios28 Δημοσ. 3 Σεπτεμβρίου 2018 Δημοσ. 3 Σεπτεμβρίου 2018 (επεξεργασμένο) 50 λεπτά πριν, xarda είπε Πραγματι αλλάζει σειρα και μπαίνει στο κέντρο το κείμενο.Ομως κατα την αλλαγη της σειράς το κείμενο τοποθετείται ναι μεν στο κέντρο του label ΑΛΛΑ στην αριστερή πλευρά του.Εγώ θελω να τοποθετείται ακριβώς στο κέντρο σε κάθε αλλαγής σειράς.Το ενα δηλαδη κάτω απο το άλλο στο κέντρο και όχι το ενα κάτω απο το αλλο αλλα στα αριστερά του.Τι λύση υπάρχει;;; jlabel.setHorizontalAlignment(JLabel.CENTER); String text = "row first<br>row second<br>row third<br>"; String html = "<html><div style='text-align: center;'>" + text + "</div></html>"; jlabel.setText(html); Επεξ/σία 3 Σεπτεμβρίου 2018 από marios28 1
masteripper Δημοσ. 4 Σεπτεμβρίου 2018 Δημοσ. 4 Σεπτεμβρίου 2018 Θα μπορούσες να κάνεις και padding...δηλ. να γεμίσεις με κενά τον χώρο που χρειάζεσαι για να κεντραριστεί...αν και έχω καιρό με την Java Λογικά θα μπορείς να "διαβάσεις" το μήκος του κειμένου σου σε κάποια μονάδα μέτρησης... να "διαβάσεις" το ωφέλιμο πλάτος του TextBox και ανάλογα να κάνεις την συμπλήρωση.
Xvipes Δημοσ. 12 Σεπτεμβρίου 2018 Δημοσ. 12 Σεπτεμβρίου 2018 Στις 4/9/2018 στις 9:31 ΠΜ, masteripper είπε Θα μπορούσες να κάνεις και padding...δηλ. να γεμίσεις με κενά τον χώρο που χρειάζεσαι για να κεντραριστεί...αν και έχω καιρό με την Java Λογικά θα μπορείς να "διαβάσεις" το μήκος του κειμένου σου σε κάποια μονάδα μέτρησης... να "διαβάσεις" το ωφέλιμο πλάτος του TextBox και ανάλογα να κάνεις την συμπλήρωση.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα