powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Пара вопросов про JEditPane
12 сообщений из 12, страница 1 из 1
Пара вопросов про JEditPane
    #33721016
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите, можно ли этому компоненту скормить HTML так, чтоб он его как HTML показал?

Пытался так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
 public   class  MainFrame  extends  JFrame{
    
    /** Creates a new instance of MainFrame */
     public  MainFrame() {
        //this.setSize(640, 480);
         this .setBounds( 100 ,  100 ,  640 ,  480 );
         this .editPanel =  new  JEditorPane();
         this .getContentPane().add( this .editPanel);
         this .editPanel.setText("<b>Yo</b>");
    }
    
     private  JEditorPane editPanel;
    
}
Однако текст <b>Yo</b> так и отобразился.

Вообще мне надо сделать простенький редактор, чтоб выделенный участок обрамлялся соответствующими тегами и сразу отображался соответствующим образом. Тоесть жирным, подчёркнутым, или ещё как. Кто делал такие вещи?
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721048
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sarin
> Скажите, можно ли этому компоненту скормить HTML так, чтоб он его как HTML показал?

> Пытался так: public class MainFrame extends JFrame{/** Creates a
> new instance of MainFrame */ public MainFrame() {//this.setSize(640,
> 480); this.setBounds(100, 100, 640, 480);this.editPanel = new
> JEditorPane();this.getContentPane().add(this.editPanel);this.editPanel.setText("<b>Yo</b>");
> }private JEditorPane editPanel;
> }
> Однако текст <b>Yo</b> так и отобразился.

> Вообще мне надо сделать простенький редактор, чтоб выделенный
> участок обрамлялся соответствующими тегами и сразу отображался
> соответствующим образом. Тоесть жирным, подчёркнутым, или ещё как.
> Кто делал такие вещи?Тема==Ответить




контент тип надов text/html установить. там есть метод для этого

-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721053
ddddiiiiimmmmaaaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
напиши это между <html></html>
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721141
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady
контент тип надов text/html установить. там есть метод для этого

большое спасибо. Помогло.


ddddiiiiimmmmaaaaнапиши это между <html></html>
Спасибо, но к сожалению не помогает. Я проверил. Наличие этих тегов никак не влияет на отображение. ContentType помог.
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721150
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<html><body>Hello World!</body></html>
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721250
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessen<html><body>Hello World!</body></html>
text/html вполне хватает.

Кстати, а как получить текст шапки которую добавляет сам компонент?

А то я вставляю в него такой текст: Y<sub>o</sub> bfgbfgbfgbfgd, а он добавляет <html> и иже с ними.

Или, что ещё лучше, как изменить выделенный текст? В редакторе выделено несколько букавок. Их надо заменить на openTag + выделенные букавки + closeTag.
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721268
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sarin

> Или, что ещё лучше, как изменить выделенный текст? В редакторе
> выделено несколько букавок. Их надо заменить на openTag + выделенные
> букавки + closeTag.Тема==Ответить





setEditable(true);
выделить текст, набрать буковки :). теги нельзя набирать. если
нужно выделенный текст сделать жирным, то:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
        panel.add(bBold);
        bBold.addActionListener( new  ActionListener() {
             public   void  actionPerformed(ActionEvent e) {
                SimpleAttributeSet style =  new  SimpleAttributeSet();
                StyleConstants.setBold(style, true);
                updateStyleForSelection(style);
            }
        });
        ...


     private   void  updateStyleForSelection(AttributeSet style) {
        HTMLDocument doc=(HTMLDocument)pane.getDocument();  //получаем выделенный текст
         int  pos = pane.getSelectionStart();
        doc.setCharacterAttributes(pos, pane.getSelectionEnd() - pos, style, false);
        contentChanged = true;
    }
        
    
-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721299
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин. У меня предполагается много разного. В первую очередь волнует не bold, а sub и sup.

Делаю так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
 package  bqedit;

 import  javax.swing.*;
 import  java.awt.Color;
 import  java.awt.GridLayout;
 import  java.awt.event.ActionListener;
 import  java.awt.event.ActionEvent;

/**
 *
 * @author sarin2.0
 */
 public   class  MainFrame  extends  JFrame{
    
    /** Creates a new instance of MainFrame */
     public  MainFrame() {
        //this.setSize(640, 480);
         this .setBounds( 100 ,  100 ,  640 ,  480 );
        
         this .button =  new  JButton("123");       
         this .editPanel =  new  JEditorPane();
        
         this .getContentPane().setLayout( new  GridLayout( 2 ,  2 ));
        
         this .getContentPane().add( this .button);
         this .getContentPane().add( this .editPanel); 
        
         this .button.addActionListener( new  Format("<b>", "</b>"));
        
         this .editPanel.setContentType("text/html");
         this .editPanel.setText("Y<sub>o</sub> bfgbfgbfgbfgd");
        
    }
    
     class  Format  implements  ActionListener{
         public   void  actionPerformed(ActionEvent event){
            System.out.println(editPanel.getText().substring( 0 , editPanel.getSelectionStart() +  30 ) + " " + editPanel.getSelectionStart());
            
            editPanel.setText( this .openTag + editPanel.getSelectedText() +  this .end);
            
            
        }
        
         public  Format(String start, String closeTag){
             this .openTag = start;
             this .end = closeTag;
        }
        
         private  String openTag;
         private  String end;
        
    }
    
     private  JButton button;
     private  JEditorPane editPanel;
    
}
Это пока тестовый вариант. Потомучто вот это:
Код: plaintext
editPanel.setText( this .openTag + editPanel.getSelectedText() +  this .end);
понятно что делает:) А хотелось бы текст сохранить:)
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33721357
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady
Спасибо большое. Надо тока разобраться как это работает.

Блин, сколько лет надо учится чтоб свинг освоить?
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33722123
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sarin
Блин, сколько лет надо учится чтоб свинг освоить?


2 книжки, пару самых простых проектов, гугл - и ты знаешь свинг :)

-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33723341
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady

2 книжки, пару самых простых проектов, гугл - и ты знаешь свинг :)

Досконально?
...
Рейтинг: 0 / 0
Пара вопросов про JEditPane
    #33723382
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sarin
Досконально?


досконально ничего нельзя выучить, даже 2+2

-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Пара вопросов про JEditPane
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]