ein par tipps
-
ich bin grad dabei mit nem neuronalen netzt zur erkennung von grossbuchstaben rumzuspielen... dazu muss ich aber noch in grösseren mengen inputdaten erzeugen...
dazu hab ich mir gedacht ich versuch das mal mit java...
jetzt da ich aber erst SEHR wenig in java gemacht hab wäre ich froh um ein par tipps.
das program das ich schreiben will soll ganz einfach sein:
es braucht eine zeichungsfläche 100x100px ein eingabefeld für einen buchstaben und ein speichern button (er soll dann einfach das erzuegete bild mit den input aus dem eingabefeld als so eine art asci art an ein file anhängen) mein hauptproblem hab ich bei der zeichnungsfläche.... ich werd irgendwie aus diese Graphics nicht schlau. was benutzt man am besten als zeichenfläche ich hab zuerst gedacht ich kann dafür ein JPanel nehmen aber irgendwie sind dann z.b. die angeaben die ich mit setSize() nicht wirklich sichtbar...mfg japro
[ Dieser Beitrag wurde am 13.02.2003 um 23:20 Uhr von japro editiert. ]
-
Zeig mal Code, damit man besser erkennen kann, wo genau das Problem liegt.
Du kannst ein JPanel als Zeichenfläche nehmen. Es ist aber auch nicht schlecht, wenn du selbst eine Klasse aus JComponent ableitest. Ich würde mal versuchen, die Größe mit setPreferredSize festzulegen, aber eigentlich müßte man den Code sehen, um das beurteilen zu können.
-
ich hab das jetzt mal versucht mit dem von JComponent ableiten:
[java]
import java.awt.;
import java.awt.event.;
import javax.swing.*;public class myCanvas extends JComponent {
myCanvas()
{
setBackground(Color.white);
setForeground(Color.black);
}public void paintComponents(Graphics g)
{
g.setColor(Color.white);
g.fillRect(0,0,100,100);
g.setColor(Color.black);
g.drawLine(0,0,100,100);
}public Dimension getMinimumSize()
{
return new Dimension(100,100);
}public Dimension getPreferredSize()
{
return new Dimension(100,100);
}
}[/code]
wenn ich das irgenwo reinbaue dann wird zwar schön brav ein 100x100 bereich ausgespart aber es wird keine schwarze linie auf weissem hintergrund gezeichnet???[ Dieser Beitrag wurde am 14.02.2003 um 12:26 Uhr von japro editiert. ]
[ Dieser Beitrag wurde am 14.02.2003 um 12:28 Uhr von japro editiert. ]
-
hmmm hab jetzt erst gemerkt das es ja nen unterschied zwischen paintComponent und paintComponents gibt:
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class myCanvas extends JComponent { public myCanvas() { super(); setOpaque(true); setBorder(BorderFactory.createLineBorder(Color.black)); } protected void paintComponent(Graphics g) { g.setColor(Color.white); g.fillRect(0,0,100,100); g.setColor(Color.black); g.drawLine(0,0,100,100); } public Dimension getMinimumSize() { return new Dimension(100,100); } public Dimension getPreferredSize() { return new Dimension(100,100); } public Dimension getMaximumSize() { return new Dimension(100,100); } }
das funkt jetzt so wie ich es will
-
ich find jetzt den einstieg nicht wie ich das machen soll das der benutzer was in das fenster reinmalen kann und ich die daten nacher verarbeiten...
-
Hat sich jetzt glaub ich doch erledigt. Mir ist gerade was eingefallen.
-
@ japro @ party mir aber noch nicht :p
also ich wär trozdem froh über antworten