---
title: "färg på knapp"
type: "forum-thread"
url: "https://www.webforum.nu/amne/java/78100-färg-på-knapp"
topic: "Java"
topic_url: "https://www.webforum.nu/amne/java"
author: "Wiberg"
published: "2003-05-26T07:13:21.000Z"
updated: "2003-05-26T20:09:18.000Z"
replies: 5
views: 272
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/java/78100-färg-på-knapp"
---

# färg på knapp

## #1 — Wiberg, 2003-05-26T07:13Z

Hur ändrar jag färg på en knapp?

```
 Button penna = new Button("penna")
```

Permalänk: https://www.webforum.nu/p/78100

## #2 — Wiberg, 2003-05-26T07:23Z

en sak till...
hur kollar man om en checkbox är förkryssad?

```
 Checkbox fyll = new Checkbox("fyll", null, true);
```

Permalänk: https://www.webforum.nu/p/1064294

## #3 — Motorhead, 2003-05-26T08:59Z

Hej.

Fråga 1.
Du får ändra bakgrund och förgrund på din knapp.
 Button b = new Button("Penna");
 b.setForeground(new Color(r, g, b));
 b.setBackground(new Color(r, g, b));

Parametrarna du skickar med är en färg där r, g, b är nivåerna av röd, grön och blå som färgen blandas med. Dessa tal kan antingen var heltal 0-255 eller flyttal 0.0-1.0. 
Färg ex. (255, 0, 0) = röd

Klassen java.awt.Color har även (beroende på version) vissa färdiga färger som du kan använda dig av, tex Color.GREEN och då ser din knapp ut enligt följande:

 b.setForeground(Color.GREEN);

Fråga 2.
Lägg till en lyssnare på din checkbox...

import java.awt.\*;
import java.awt.event.\*;

public class Test extends Frame implements ItemListener{
	private Checkbox cb;
	public Test(){
		super("Testar");
		setSize(200, 200);
		cb = new Checkbox("Ett test");
		cb.addItemListener(this);
		add(cb);
		
		this.addWindowListener(new WindowAdapter() {
      	public void windowClosing(WindowEvent e) {
				System.exit(0);
      	}
    	});
    	
		show();
	}
	
	public void itemStateChanged(ItemEvent e){
		if(e.getStateChange() == ItemEvent.SELECTED){
			System.out.println("Kryssad....");
		}
		else if(e.getStateChange() == ItemEvent.DESELECTED){
			System.out.println("Inte kryssad....");
		}
	}
	
	public static void main(String\[\] args){
		new Test();
	}
}

Permalänk: https://www.webforum.nu/p/1064350

## #4 — Motorhead, 2003-05-26T09:09Z

Hej.

Glömde säga det att du kanske inte behöver en lyssnare, det beror ju på vad du vill göra...

Här är ett program som kollar checkboxens tillstånd och skriver ut det i prompten när du trycker på knappen "Gör något".

import java.awt.\*;
import java.awt.event.\*;

public class Test extends Frame implements ActionListener{
	private Checkbox cb;
	
	public Test(){
		super("Testar");
		setSize(200, 50);
		cb = new Checkbox("Ett test");
		
		Button b = new Button("Gör något");
		b.setForeground(new Color(0, 128, 0));
		b.setBackground(new Color(0, 0, 0));
		b.addActionListener(this);
		
		setLayout(new BorderLayout());
		add("West", cb);
		add("East" ,b);
		
		this.addWindowListener(new WindowAdapter() {
      	public void windowClosing(WindowEvent e) {
				System.exit(0);
      	}
    	});
    	
		show();
	}
	
	public void gor_en_sak(){
		if(cb.getState())
			System.out.println("Kryssad...");
		else
			System.out.println("Inte kryssad");
	}
	
	public void actionPerformed(ActionEvent e){
		gor_en_sak();
	}
	
	public static void main(String\[\] args){
		new Test();
	}
}

Permalänk: https://www.webforum.nu/p/1064365

## #5 — Wiberg, 2003-05-26T09:40Z

Tack!

Permalänk: https://www.webforum.nu/p/1064408

## #6 — aasah, 2003-05-26T20:09Z

Ifall du är nöjd med standardfärger kan du använda klassen Color.

Button b = new Button();
b.setBackground(Color.yellow);
b.setForeground((Color.green).brighter());

Det finns några fördefinierade färger och några metoder bland annat brighter() och darker(), vad de gör kan du säkert lista ut...

Permalänk: https://www.webforum.nu/p/1065037

---

Tråden på webben: https://www.webforum.nu/amne/java/78100-färg-på-knapp
