Διαφορά μεταξύ Jtextpane και jtextarea Διαφορά μεταξύ

Anonim

JTextPane vs JEditorPane

. αναγνωρίστε τις βασικές λειτουργίες του JTextPane και του Jtextarea πριν συζητήσετε για τις ομοιότητες και τις διαφορές μεταξύ των δύο. Το JTextPane και το JEditorPane είναι και τα δύο παράγωγα του javax. κούνια. κείμενο. JTextComponent, με το JTextPane να έρχεται ως υποκατηγορία του JEditorPane. Από αυτό, είναι ασφαλές να συμπεράνουμε ότι το JTextPane είναι μια εξειδικευμένη μορφή του JEditorPane που έρχεται με κάποια επιπλέον λειτουργικότητα.

Το JTextArea έρχεται με συγκεκριμένες λειτουργίες. ένα από αυτά εμποδίζει την περιτύλιξη του κειμένου κάθε φορά που τοποθετείται το κείμενο. Αυτό στην πραγματικότητα σημαίνει ότι σε περίπτωση που το κείμενο τοποθετείται σε αυτό, αυτόματα αντιστοιχίζεται στην αριστερή πλευρά και πηγαίνει κατ 'αυτό τον τρόπο μέχρι να πατήσετε το πλήκτρο enter.

Το JTextPane από την άλλη έρχεται με το χαρακτηριστικό wrap text. Αυτό βοηθά στη δημιουργία ορίων εντός του πεδίου κειμένου. Όταν ένα γράμμα φτάσει στο όριο, θα ξεκινήσει αυτόματα την επόμενη γραμμή, σε αντίθεση με την προβολή που εμφανίζεται από το JTextArea.

Για να κάνει το JTextArea να λειτουργεί το ίδιο με το JTextPane, η εφαρμογή του τυλίγματος κειμένου στο JTextArea έχει δείξει ότι επιτρέπει την αυτόματη εκκίνηση προτάσεων σε μια νέα γραμμή όταν η προηγούμενη γραμμή φτάσει στο όριο. Αυτή είναι μια από τις κύριες διαφορές. Για να καταστεί αυτό δυνατό, το JTextArea κάνει χρήση των setLineWrap (…) και setWrapStyleWord (…). Είναι δυνατό να ελέγξετε τον τρόπο με τον οποίο γίνεται η περιτύλιξη κειμένου.

Μια άλλη διαφορά είναι ότι το JTextPane έχει δυνατότητες σχεδίασης λέξεων / παραγράφων και επιτρέπει την ενσωμάτωση εικόνων που γίνεται σε ένα ενιαίο έγγραφο. Αυτή η δυνατότητα διαφέρει από εκείνη της JTextArea, η οποία δεν επιτρέπει την επεξεργασία των εικόνων μέσα σε ένα ενιαίο έγγραφο.

Έχει επίσης αποδειχθεί ότι το JTextPane υποστηρίζει την επεξεργασία του περιεχομένου που εισήχθη, μια λειτουργία που δεν είναι διαθέσιμη στο JTextArea, ακόμη και μετά την καθιέρωση της δυνατότητας στρέβλωσης. Μεταξύ των δυνατοτήτων επεξεργασίας που επιτρέπει το JTextPane υπογραμμίζεται η έντονη γραφή του περιεχομένου και του χρωματισμού του κειμένου.

Ο περιορισμός που εμποδίζει το JTextPane να είναι η προτιμώμενη επιλογή έναντι του JTextArea είναι ότι το JTextPane είναι πολύ βαρύ όταν πρόκειται για χρήση εξαρτημάτων. Επομένως, είναι σκόπιμο να χρησιμοποιήσετε το JTextArea, το οποίο χρησιμοποιεί χαρακτηριστικό στρέβλωσης κειμένου, αν δεν χρειάζεται να επεξεργαστείτε περιεχόμενο, υπογραμμίζοντας το, κάνοντας το τολμηρό ή χρωματισμένο. Αυτό συμβαίνει επειδή η χρήση του JTextPane και η μη χρήση κάποιου από τα χαρακτηριστικά του styling οδηγεί σε σημαντική επιβράδυνση του περιβάλλοντος χρήστη. Αυτό επίσης αναγκάζει περισσότερη μνήμη από το σύστημα να κατανεμηθεί άσκοπα στο JTextPane. Για ένα καλό πρόγραμμα κατασκευής ελαφρού βάρους, το οποίο είναι εύκολο για το σύστημα, απαιτεί μόνο ελάχιστη είσοδο, είναι σκόπιμο να πάει για το JTextArea, όπως έχει δειχθεί ότι λειτουργεί καλά στις διεπαφές χρήστη, χωρίς να απαιτεί πόρους.

Λόγω της τεράστιας ευελιξίας που προσφέρει η JTextPane και των πόρων που απαιτεί από το λειτουργικό σύστημα, σημαίνει ότι απαιτείται περισσότερος προγραμματισμός πριν από τη χρήση του. Μια εξαιρετική λειτουργία που προσφέρει το JTextPane ότι δεν είναι διαθέσιμη στο JTextArea είναι ότι επιτρέπει την εύκολη φόρτωση των πλαισίων επεξεργασίας μαζί με το μορφοποιημένο κείμενο που προέρχεται από τη διεύθυνση URL. Αυτό είναι ένα πολύ σημαντικό χαρακτηριστικό, καθώς επιτρέπει την εμφάνιση μη επεξεργάσιμων πληροφοριών βοήθειας.

Περίληψη

Το JTextPane είναι παράγωγο του javax. κούνια. κείμενο. JTextComponent.

Το JTextArea δεν μπορεί να παραμορφώσει το κείμενο.

Το JTextPane έρχεται με δυνατότητα στρέβλωσης κειμένου

Το JTextArea μπορεί να παραμορφώσει το κείμενο χρησιμοποιώντας setLineWrap (…) και setWrapStyleWord (…)

JTextPane είναι πόρος βαριά ενώ JTextArea είναι πόρος περιορισμός

Για ταχύτερες υλοποιήσεις, JTextArea θα έπρεπε

Το JTextPane θα πρέπει να χρησιμοποιηθεί μόνο όταν απαιτείται styling στο έργο

Το JTextPane χρειάζεται περισσότερο προγραμματισμό σε σύγκριση με τη χρήση JTextArea

Το JTextPane επιτρέπει την ενσωμάτωση εικόνας ενώ το JTextArea δεν επιτρέπει την ενσωμάτωση εικόνων