2016-03-06 15 views
0

我已经在互联网上搜索了一个非常简单的例子,但它们都太复杂,我无法理解它们。这是我的代码,但是我的linter说有错误,我不知道为什么。 (我想申请一个非常简单的例子)有人能给我一个非常简单的例子来改变文本的颜色吗?

import javax.swing.*; 
import javax.swing.text.*; 
import java.awt.Color; 
public class Test { 

/** 
* @param args 
*/ 
public static void main(String[] args) { 
    // TODO Auto-generated method stub   
    setPenColor(Color.RED); 
    System.out.println("Red text!"); 
    } 
} 
+0

的可能的复制[坐落在一个Java文本框中的文本颜色(http://stackoverflow.com/questions/900360/set-the-text-color-in-a-java-textbox) – Tersosauros

+1

我不明白这个问题的一个字。对不起:( –

+0

@Tersosauros不,因为这个问题是关于JTextbox在询问关于Java控制台的问题。 – Paul

回答

0

你问(更改Java控制台文本颜色)不是Java本身的特性,而是IDE的功能,你正在运行的程序(或命令提示符下,如果您的程序在命令窗口中运行)。并且改变它们会改变它在所有使用该控制台的程序中的所有文本,而不仅仅是程序的一部分。

尽管IDE在改变控制台颜色方面有所不同,但它们通常在IDE设置下,而不是通过代码设置。

如果您想更改命令窗口的文本颜色,可以通过属性窗口(右键单击标题)暂时这样做,并通过默认窗口永久性地打开将来的窗口(与属性相同的步骤,但不同的窗口菜单项)。

0

试试这个:

import java.awt.Color; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 


public class Test { 

    public static void main(String[] args) { 

     JFrame frame = new JFrame(); 
     frame.setLayout(null); 

     frame.setSize(400, 600); //width, height 
     frame.setTitle("MyFrame something"); 

     frame.setLocationRelativeTo(null); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

     JLabel myLabel = new JLabel(); 
     myLabel.setText("Blue Color"); 
     myLabel.setSize(100, 30); //width, height 
     myLabel.setLocation(frame.getWidth()/2 - myLabel.getWidth()/2, frame.getHeight()/2 - myLabel.getHeight()/2); 
     //  myLabel.setForeground(new Color(40, 60, 255, 255)); // red, green, blue, alpha/transparency from 0-255 
     myLabel.setForeground(Color.blue); 

     JLabel myLabel_red = new JLabel(); 
     myLabel_red.setText("Red Color"); 
     myLabel_red.setSize(100, 30); //width, height 
     myLabel_red.setLocation(frame.getWidth()/2 - myLabel_red.getWidth()/2, frame.getHeight()/2 - myLabel_red.getHeight()/2 + 50); 
     myLabel_red.setForeground(Color.red); 

     JLabel myLabel_gray = new JLabel(); 
     myLabel_gray.setText("gray Color"); 
     myLabel_gray.setSize(100, 30); //width, height 
     myLabel_gray.setLocation(frame.getWidth()/2 - myLabel_gray.getWidth()/2, frame.getHeight()/2 - myLabel_gray.getHeight()/2 + 100); 
     myLabel_gray.setForeground(Color.gray); 


     frame.add(myLabel); 
     frame.add(myLabel_red); 
     frame.add(myLabel_gray); 

     frame.setVisible(true); 

     frame.repaint(); 


    } 
} 
+0

我的电脑告诉我'颜色不能被解析为一个变量'如果我运行这个... –

+0

请确保您导入颜色:在您的导入中添加此 - import java.awt.Color; – NullOverFlow

1

转到here和下载jansi.jar,然后提取这些文件夹和所有子目录:META-INF和org.fusesource *一切从这些。将这些放在与您的项目相同的目录中。

import org.fusesource.jansi.AnsiConsole; 
    import static org.fusesource.jansi.Ansi.*; 
    import static org.fusesource.jansi.Ansi.Color.*; 

    public class test{ 
     public static void main(String[] args){ 
      try{ 
       AnsiConsole.systemInstall(); 
       System.out.println(ansi().fg(GREEN).a("Hello").reset() + 
" " + ansi().fg(RED).a("World").reset());  
      }catch(Exception ex){ 
       ex.printStackTrace(); 
      } 
     } 
    } 

这是用于Windows控制台,所以文本应该在控制台中显示颜色^^。

enter image description here

相关问题