RAP + SWT/RWT: Skala erstellen

Status
Nicht offen für weitere Antworten.

sutcha

Bekanntes Mitglied
Hallo,

ich suche eine Möglichkeit, eine Skala mit SWT zu zeichnen, die aus unterschiedlichen, farbigen Rechtecken besteht. Innerhalb dieser Skala soll dann ein Punkt gezeichnet werden, der den genauen Wert darstellt.
z.B: Skala von 1-10, aktueller wert ist 5. Es werden 5 Rechtecke gezeichnet und in dem mittleren Rechteck (evtl. Grenze zwischen mittleren Rechteck und dem Rechteck links davon) befindet sich der Punkt (Markierung).

Ich habe ein AWT-Beispiel:
Code:
	  		for( int i=0; i<levels; i++){ // levels = Anzahl an Intervallwerten
	  			
	  				g.setColor(Color.WHITE);
	  				g.fillRect(24*i,0,24,24);
	  				
	  				if (i%2 == 0) {  // da jedes Rechteck 2 Intervallwerte darstellt
	  				g.setColor(colorXY);
	  		  		g.fillRect(24*i+1,1,22,22);
                                        }
	  		  		if(i==(level-1)){ // level ist der genaue Wert innerhalb des Intervalls 
	  		  			g.setColor(Color.BLUE); 
	  		 			g.fillOval(24*i+6,6,12,12);  		  		
	  		  		}
	  		}

Hoffe ihr habt mein Problem verstanden und könnt mir helfen.

Vielen Dank im Voraus!

PS: hat sich wahrscheinlich erledigt... Introduction to SWT Graphics
 
Zuletzt bearbeitet:
G

Gast2

Gast
Könntest dir mal SWTChart oder JFreeChart anschauen... Oder wenn du selber zeichnen willst oder nimm das draw2D für eclipse plugin...
hier hats paar Snippet für alles mögliche kannst ja mal durchstöbern
SWT Draw2D Example : 2DSWT JFace EclipseJava
 
Zuletzt bearbeitet von einem Moderator:

sutcha

Bekanntes Mitglied
Ich hab irgendwie meine Bedenken, ob das auch mit RWT geht... ich habe mal ein paar Beispiele ausprobiert, aber es fehlen immer wieder ein paar Abhängigkeiten aus dem Graphics-Package. Da ich aber einige aus dem Package habe, vermute ich, dass das mit RWT also RAP-Anwendung nicht geht.
 
G

Gast2

Gast
was benutzt du den??? draw2D??? Dann musst du natürlich das plugin(jar) herunterladen und auch miteinbinden... glaub mir draw2D ist viel viel einfacher...
 

Wildcard

Top Contributor
In RAP kannst du keine PaintListener verwenden (ist auch irgendwie schwierig wahlfrei in eine Webapplication zu zeichnen).
 

sutcha

Bekanntes Mitglied
jetzt noch eine ganz dumme Frage:

über PlatformUI.getWorkbench().getDisplay().getSystemColor(SWT.COLOR_GREEN) bekomme ich ein grün. Was muss ich machen, damit ich einen Hex-Wert als Farbe angezeigt bekomme....

Code:
String hex = interval.getColor();
int colorValue = Integer.parseInt(hex,16);

Darüber bekomme ich zwar einen int, aber der hilft mir nicht weiter (SWT.COLOR_GEEN = 5, meine colorValue liegt im 65k-Bereich)

Gibt es eine andere Möglichtkeit eine Farbe zu setzen, ohne über die SystemColor zu gehen? ich habe nichts vernünftiges gefunden.
 

Wildcard

Top Contributor
über PlatformUI.getWorkbench().getDisplay().getSystemColor(SWT.COLOR_GREEN) bekomme ich ein grün. Was muss ich machen, damit ich einen Hex-Wert als Farbe angezeigt bekomme....
Damit lässt sich einfacher arbeiten:
Color (Eclipse Platform API Specification)

Gibt es eine andere Möglichtkeit eine Farbe zu setzen, ohne über die SystemColor zu gehen? ich habe nichts vernünftiges gefunden.
einfach new Color!?
 

sutcha

Bekanntes Mitglied
ja, das dachte ich auch...

Code:
RGB rgb = new RGB(131,134,141);
Color color = new Color(PlatformUI.getWorkbench().getDisplay(), rgb);

hier unterringelt mir Eclipse den Color-Constructor mit "no suggestions available". Das gleiche geschieht, wenn ich die RGB-Werte als Parameter übergebe. Irgendwann kommt dann bei Eclipse der Vorschlag "Remove to match constructor Color(int)".

Ich habe "org.eclipse.swt.graphics.Color" importiert.
 

sutcha

Bekanntes Mitglied
import org.eclipse.swt.graphics.RGB;

ich denke, dass sollte so passen. Der sagt mir ja auch immer, dass es nur einen Color(int) Konstruktor gibt... das ist doch nicht normal. Oder gibt es für RWT auch eine abgespackte Color-Klasse? ;)
 

sutcha

Bekanntes Mitglied
ja, die API kenn ich auch. Mir geht es darum, dass Eclipse mir dort einen Fehler anzeigt: kein entsprechender Konstruktor vorhanden, nur Color(int). Eigentlich sollte es genau umgekehrt sein, da es kein Color(int) in der API gibt.
 

sutcha

Bekanntes Mitglied
es verweist auf org.eclipse.swt.graphics.Color ;)

Code:
/*******************************************************************************
 * Copyright (c) 2002, 2008 Innoopract Informationssysteme GmbH.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     Innoopract Informationssysteme GmbH - initial API and implementation
 ******************************************************************************/
package org.eclipse.swt.graphics;

import org.eclipse.swt.internal.graphics.IColor;
import org.eclipse.rwt.graphics.Graphics;

/**
 * Instances of this class manage resources that implement SWT's RGB color 
 * model. 
 * 
 * <p>To create a color, use one of the <code>getColor</code> methods in class 
 * <code>Graphics</code> and either specify the individual color components as 
 * integers in the range 0 to 255 or provide an instance of an <code>RGB</code>.
 * </p>
 * 
 * @see RGB
 * @see Device#getSystemColor
 * @see Graphics
 * 
 * @since 1.0
 */
public class Color extends Resource {

  /* (intentionally non-JavaDoc'ed)
   * Extension of class <code>Color</code> with an additional method that
   * returns a color id to pass to qooxdoo.
   * NOTE: Don't remove this class. Despite a possible warning that this class 
   * is never used locally - it IS. See ResourceFactory#createColorInstance.
   */
  private static class ColorExt extends Color implements IColor {

    private final String colorValue;

    private ColorExt( final int colorNr ) {
      super( colorNr );
      StringBuffer buffer = new StringBuffer();
      buffer.append( "#" );
      append( buffer, Integer.toHexString( getRed() ) );
      append( buffer, Integer.toHexString( getGreen() ) );
      append( buffer, Integer.toHexString( getBlue() ) );
      colorValue = buffer.toString();
    }

    private void append( final StringBuffer buffer, final String value ) {
      if( value.length() == 1  ) {
        buffer.append( "0" );
      }
      buffer.append( value );
    }

    public String toColorValue() {
      return colorValue;
    }
  }

  /**
   * Holds the color values within one integer.
   */
  private int colorNr;

  /**
   * Prevents uninitialized instances from being created outside the package.
   */
  private Color( final int colorNr ) {
    this.colorNr = colorNr;
  }

  /**
   * Returns the amount of blue in the color, from 0 to 255.
   *
   * @return the blue component of the color
   * @exception SWTException
   *              <ul>
   *              <li>ERROR_GRAPHIC_DISPOSED - if the receiver has been
   *              disposed</li>
   *              </ul>
   */
  public int getBlue() {
    return ( colorNr & 0xFF0000 ) >> 16;
  }

  /**
   * Returns the amount of green in the color, from 0 to 255.
   *
   * @return the green component of the color
   * @exception SWTException
   *              <ul>
   *              <li>ERROR_GRAPHIC_DISPOSED - if the receiver has been
   *              disposed</li>
   *              </ul>
   */
  public int getGreen() {
    return ( colorNr & 0xFF00 ) >> 8;
  }

  /**
   * Returns the amount of red in the color, from 0 to 255.
   *
   * @return the red component of the color
   * @exception SWTException
   *              <ul>
   *              <li>ERROR_GRAPHIC_DISPOSED - if the receiver has been
   *              disposed</li>
   *              </ul>
   */
  public int getRed() {
    return colorNr & 0xFF;
  }

  /**
   * Returns an <code>RGB</code> representing the receiver.
   *
   * @return the RGB for the color
   * @exception SWTException
   *              <ul>
   *              <li>ERROR_GRAPHIC_DISPOSED - if the receiver has been
   *              disposed</li>
   *              </ul>
   */
  public RGB getRGB() {
    return new RGB( getRed(), getGreen(), getBlue() );
  }

  /**
   * Compares the argument to the receiver, and returns true if they represent
   * the <em>same</em> object using a class specific comparison.
   *
   * @param object the object to compare with this object
   * @return <code>true</code> if the object is the same as this object and
   *         <code>false</code> otherwise
   * @see #hashCode
   */
  public boolean equals( final Object object ) {
    return object == this;
  }

  /**
   * Returns an integer hash code for the receiver. Any two objects that return
   * <code>true</code> when passed to <code>equals</code> must return the
   * same value for this method.
   *
   * @return the receiver's hash
   * @see #equals
   */
  public int hashCode() {
    return colorNr;
  }

  /**
   * Returns a string containing a concise, human-readable description of the
   * receiver.
   *
   * @return a string representation of the receiver
   */
  public String toString() {
    return "Color {" + getRed() + ", " + getGreen() + ", " + getBlue() + "}";
  }
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Swing Swing - Eigene Komponenten erstellen AWT, Swing, JavaFX & SWT 17
N Swing Unterscheidung neues Frame erstellen oder vorhandenes nach vorne holen AWT, Swing, JavaFX & SWT 11
MJannek eigene GUI Bibliothek erstellen. AWT, Swing, JavaFX & SWT 10
M Mandelbrot mit BigDecimal erstellen und in der UI zeichnen, funktionierte nicht. AWT, Swing, JavaFX & SWT 1
I Hilfe bei dem Erstellen einer SQL Abfrage aus gewählten JComboBoxen AWT, Swing, JavaFX & SWT 5
C Swing ImageIcon erstellen, skalieren und verwenden AWT, Swing, JavaFX & SWT 3
T src ordner erstellen AWT, Swing, JavaFX & SWT 6
M Javafx versuch Bibliothek zu erstellen AWT, Swing, JavaFX & SWT 0
melaniemueller Confirmation Dialog erstellen AWT, Swing, JavaFX & SWT 18
izoards Outlook Mail erstellen - Signatur wird nicht angezeigt. AWT, Swing, JavaFX & SWT 3
E Putzplan erstellen AWT, Swing, JavaFX & SWT 15
news2swen automatisches erstellen eines Languagefiles AWT, Swing, JavaFX & SWT 1
W Clear Canvas und anschließendes neues Erstellen von Objekten auf Canvas aus ArrayList AWT, Swing, JavaFX & SWT 4
P Swing Programm hängt sich bei Buttondruck auf? (GUI für "Chatbot" erstellen) AWT, Swing, JavaFX & SWT 15
D runnable Jar mit Javafx erstellen(Eclipse) AWT, Swing, JavaFX & SWT 10
N Kontextmenü (Popup-Fenster) erstellen AWT, Swing, JavaFX & SWT 3
L JavaFX PropertyView mit dynamischer EditCell erstellen? AWT, Swing, JavaFX & SWT 8
C Falschfarbenbild (lineare Grauwertspreizung)aus Grauwert-Bild erstellen AWT, Swing, JavaFX & SWT 15
H Beim JFrame erstellen ein anderes schließen AWT, Swing, JavaFX & SWT 0
Z Random Butten erstellen ohne Container AWT, Swing, JavaFX & SWT 15
F Verzeichnis über GUI erstellen AWT, Swing, JavaFX & SWT 2
J Exception beim JFrame erstellen AWT, Swing, JavaFX & SWT 6
S Labels in Panel erstellen AWT, Swing, JavaFX & SWT 1
B JavaFX RadioButtons erstellen AWT, Swing, JavaFX & SWT 7
N Ausführbare Datei aus JavaFX Projekt erstellen AWT, Swing, JavaFX & SWT 22
A Objekt von einem Window erstellen? AWT, Swing, JavaFX & SWT 8
K Buttons dynamisch erstellen (NetBeans) AWT, Swing, JavaFX & SWT 10
ralfb1105 JavaFX TreeView dynamisch aus Datenbank Tabelle erstellen AWT, Swing, JavaFX & SWT 22
ralfb1105 JavaFX Dynamisch TableView Spalten erstellen AWT, Swing, JavaFX & SWT 4
O Basics - Anwendung erstellen mit mehreren Szenen AWT, Swing, JavaFX & SWT 1
dereki2000 LookAndFeel Individuelles LAF erstellen AWT, Swing, JavaFX & SWT 9
C SWT Breadcrumb Zeile mit entsprechenden Hyperlinks erstellen AWT, Swing, JavaFX & SWT 0
D Swing Anwendung ohne JPanel erstellen AWT, Swing, JavaFX & SWT 1
L Chat erstellen AWT, Swing, JavaFX & SWT 13
N "Automatisches" erstellen von jButtons AWT, Swing, JavaFX & SWT 1
K Aus 2 Arrays xy - Graph erstellen AWT, Swing, JavaFX & SWT 9
K Swing outerPanel und innerPanel erstellen AWT, Swing, JavaFX & SWT 4
N Eclipse - GUI - MacBook - Buttonsichtbarkeit beim Anlegen/Erstellen AWT, Swing, JavaFX & SWT 14
Timo_neu_in_java Buttons Erstellen AWT, Swing, JavaFX & SWT 6
P JList erstellen AWT, Swing, JavaFX & SWT 4
H Musik wird nach dem erstellen der .jar Datei nicht mehr abgespielt AWT, Swing, JavaFX & SWT 1
J Statistik erstellen AWT, Swing, JavaFX & SWT 3
H GUI erstellen um JUnit Tests auszuführen AWT, Swing, JavaFX & SWT 29
H JavaFX via .fxml einen abgeleiteten Button erstellen... AWT, Swing, JavaFX & SWT 4
D Swing JComboBox (DefaultComboBoxModel) überschreibt Eintrag beim erstellen AWT, Swing, JavaFX & SWT 0
Prafy Sich ändernde Farbverläufe erstellen AWT, Swing, JavaFX & SWT 4
Thallius Swing Mehrere tausend "Panels" erstellen AWT, Swing, JavaFX & SWT 3
O Swing JList beim Klicken in der GUI erstellen AWT, Swing, JavaFX & SWT 6
M JavaFX GUI-Elemente erstellen, nachdem die GUI geladen hat AWT, Swing, JavaFX & SWT 4
U dynamisches JTree erstellen AWT, Swing, JavaFX & SWT 2
A Mit dem Scene Builder eine Collage erstellen (Bilder beziehen aus Flickr) AWT, Swing, JavaFX & SWT 1
D JavaFX build.fxbuild error beim Erstellen einer exe AWT, Swing, JavaFX & SWT 2
T JavaFX Flexible Layouts dynamisch erstellen / Design-Inspirationen AWT, Swing, JavaFX & SWT 8
J JavaFX JavaFX exe erstellen AWT, Swing, JavaFX & SWT 5
E JavaFX JavaFX - MenuItem erstellen aus dem Inhalt einer HashMap AWT, Swing, JavaFX & SWT 1
G Programm GUI erstellen AWT, Swing, JavaFX & SWT 5
N Swing JTree Problem beim erstellen der Knoten AWT, Swing, JavaFX & SWT 0
G Anonyme Instanz von JXImageView erstellen und mit Bild initialisieren AWT, Swing, JavaFX & SWT 7
M "(Buch-)Seiten" erstellen AWT, Swing, JavaFX & SWT 2
R AWT AWT Textfeld durch Klick auf Button erstellen? AWT, Swing, JavaFX & SWT 3
H Swing Probleme beim erstellen eines neuen Objektes durch einen Button AWT, Swing, JavaFX & SWT 10
Z Diagramm mit jfreechart quadratisch erstellen AWT, Swing, JavaFX & SWT 1
F JButtons erstellen lassen mit unterschiedlichen Funktionen AWT, Swing, JavaFX & SWT 3
T JPanel dynamisch erstellen AWT, Swing, JavaFX & SWT 4
J Logikfehler im erstellen eines GUI AWT, Swing, JavaFX & SWT 3
A Swing Frames richtig erstellen AWT, Swing, JavaFX & SWT 3
T Wizard mit NEXT Button erstellen AWT, Swing, JavaFX & SWT 11
D gerichteten Graph erstellen AWT, Swing, JavaFX & SWT 2
D Swing Ansichtstranformationsmatrix erstellen AWT, Swing, JavaFX & SWT 0
M JavaFX MSI oder EXE aus JavaFX Projekt erstellen? AWT, Swing, JavaFX & SWT 2
R Kästchen mit Zufallsfarben erstellen AWT, Swing, JavaFX & SWT 2
A Fehler bei erstellen eines JTextFields AWT, Swing, JavaFX & SWT 2
A Fenster erstellen AWT, Swing, JavaFX & SWT 2
G Label erstellen AWT, Swing, JavaFX & SWT 6
G Blöcke erstellen AWT, Swing, JavaFX & SWT 4
K Swing Terminplaner erstellen AWT, Swing, JavaFX & SWT 7
G JavaFX Neues Fenster erstellen AWT, Swing, JavaFX & SWT 3
M Wie kann ich eine an Apple Automator angelehnte GUI erstellen? AWT, Swing, JavaFX & SWT 1
T An/aus Button erstellen AWT, Swing, JavaFX & SWT 5
A Swing Transparenten JPanel erstellen AWT, Swing, JavaFX & SWT 5
D Jahreskalender erstellen AWT, Swing, JavaFX & SWT 2
R Int aus JSpinner auslesen und Tabelle erstellen AWT, Swing, JavaFX & SWT 3
W JTable erstellen und Spalten sortieren AWT, Swing, JavaFX & SWT 2
B Erstellen eigener Combobox ("CellFactory") AWT, Swing, JavaFX & SWT 4
K Swing SwingGUI - Erstellen für Anfänger AWT, Swing, JavaFX & SWT 15
B Eigenen Look&Feel erstellen?! AWT, Swing, JavaFX & SWT 2
S Swing Kopie eines JPanels inkl. aller objekte darin erstellen AWT, Swing, JavaFX & SWT 5
R SWT Eigene Events erstellen und werfen AWT, Swing, JavaFX & SWT 59
K JSpinner in passender Breite erstellen oder automatisch anpassen AWT, Swing, JavaFX & SWT 2
B 2D-Grafik Dynamisches Erstellen von Images und deren Animation AWT, Swing, JavaFX & SWT 4
C Border in JPanel erstellen AWT, Swing, JavaFX & SWT 4
P JTabbedPane per Menuitem erstellen AWT, Swing, JavaFX & SWT 20
B Swing invokeLater nötig beim GUI erstellen? AWT, Swing, JavaFX & SWT 10
V Swing Wochenplaner in Swing erstellen! Aber wie? AWT, Swing, JavaFX & SWT 13
J Frame mit Button erstellen - Warum ist es nötig, Frame über Unterklasse zu erstellen? (Reg Listener) AWT, Swing, JavaFX & SWT 2
P Neue Datei erstellen in JPanel AWT, Swing, JavaFX & SWT 5
V Guis erstellen mit FXML und javaFX gemischt AWT, Swing, JavaFX & SWT 5
B Swing JMenuButtons mit Funktionen aus Array erstellen AWT, Swing, JavaFX & SWT 4
B Bild direkt im Quelltext erstellen AWT, Swing, JavaFX & SWT 14
B Applet Aus Applet signiertes jar mit externen libs erstellen AWT, Swing, JavaFX & SWT 9

Ähnliche Java Themen

Neue Themen


Oben