Изменение цвета текста для определенной строки в JLabel (не весь текст JLabel) [дубликат]

Как это ????

if(($ip=filter_input(INPUT_SERVER,'REMOTE_ADDR',validate_ip))===false or empty($ip)){
  exit;
  }
echo $ip;

PS

if(($ip=filter_input(INPUT_SERVER,'REMOTE_ADDR',FILTER_VALIDATE_IP|FILTER_FLAG_NO_PRIV_RANGE|FILTER_FLAG_NO_RES_RANGE))===false){
  header('HTTP/1.0 400 Bad Request');
  exit;
}

Все заголовки, начинающиеся с «HTTP_» или «X-», могут быть обманом, соответственно, определяемые пользователем. Если вы хотите отслеживать использование cooies и т. Д.

0
задан whitewolfpgh 17 August 2012 в 15:52
поделиться

2 ответа

Должно быть возможно использовать html для решения этого вопроса, т. е.

String t = "<html><font color=#ffffdd>Hello</font> world!";

См. http://docs.oracle.com/javase/tutorial/uiswing/components/html.html для получения дополнительной информации.

6
ответ дан Florian Minges 20 August 2018 в 06:50
поделиться
  • 1
    Кажется, что это не работает для меня, все еще имеет разметку html в тексте диалога. – whitewolfpgh 17 August 2012 в 17:07
  • 2
    Я, возможно, не делаю этого правильно, так что, пожалуйста, уточните. Что, если предложение было: Быстрая коричневая лиса. И я хотел только «коричневый». быть цветным коричневым? – whitewolfpgh 17 August 2012 в 17:18
  • 3
    Пробовал безрезультатно, я знаю, что шестерка не для коричневого цвета не успела ее найти: Текст строки = & quot; & quot; & gt; & lt; font color = # ffffdd & gt; brown & lt; / font & gt; лисицы & Quot. – whitewolfpgh 17 August 2012 в 17:25
  • 4
    Также попробовали: String text = & quot; & lt; html & gt; Быстрый & lt; font color = # ffffdd & gt; коричневый & lt; / font & gt; . Лисицы & л; / HTML & GT; & Quot; – whitewolfpgh 17 August 2012 в 17:32
  • 5
    String t = "<html>The quick <font color=#A62A2A>brown</font> fox."; JOptionPane.showMessageDialog(null, t); Это работает для меня ... – Florian Minges 18 August 2012 в 01:45

Вы можете передать Component в JOptionPane в параметре сообщения и использовать это для отображения вашего сообщения.

Что-то вроде JLabel или JPanel с метками на нем.

UPDATED

Примеры JLabel, JPanel и HTML

public class TestOptionPane {

    public static void main(String[] args) {

        JLabel label = new JLabel("Hello");
        label.setForeground(Color.RED);

        JOptionPane.showMessageDialog(null, label);

        JPanel pnl = new JPanel(new GridBagLayout());
        pnl.add(createLabel("The quick"));
        pnl.add(createLabel(" brown ", Color.ORANGE));
        pnl.add(createLabel(" fox "));

        JOptionPane.showMessageDialog(null, pnl);

        String text = "<html>The Quick <span style='color:green'>brown</span> fox</html>";
        JOptionPane.showMessageDialog(null, text);

    }

    public static JLabel createLabel(String text) {

        return createLabel(text, UIManager.getColor("Label.foreground"));

    }

    public static JLabel createLabel(String text, Color color) {

        JLabel label = new JLabel(text);
        label.setForeground(color);

        return label;

    }

}

На Mac -

JOptionPane Example on Mac [/g0]

В Windows -

JOptionPane example on Windows [/g1]

4
ответ дан MadProgrammer 20 August 2018 в 06:50
поделиться
  • 1
    это тоже не работает, JOptionPane.showmessagedialog (), похоже, выполняет метод toString для любого переданного текстового поля. Таким образом, он фактически показывает свойства компонента, а не самого компонента. – whitewolfpgh 17 August 2012 в 17:16
  • 2
    Действительно, работал на меня, может быть только JLabel – MadProgrammer 17 August 2012 в 21:59
  • 3
    @whitewolfpgh Я вернулся и расширил свой тестовый код, и все это, похоже, отлично работает для меня ... – MadProgrammer 17 August 2012 в 22:51
  • 4
    Да, я тоже смог заставить вас работать. Спасибо, что поместили всю информацию. Он выглядит как «чистый проект». на затмении фиксировала проблему & gt; & lt; – whitewolfpgh 20 August 2012 в 14:20
Другие вопросы по тегам:

Похожие вопросы: