Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Java problem

Postades av 2002-11-03 11:47:24 - Anders Bengtsson, i forum java, Tråden har 10 Kommentarer och lästs av 875 personer

jag ska göra ett program där jag skapar en instans av klassen Ball med centrum vid 100,200 och radies 20. jag ska göra en egen fil med main, som kallar på följande fil, hur gör jag?

import java.awt.*;

public class Ball{

private int centerX, centerY, radius;
private int velX, velY;
private int preassure;
private Color color;
private BallWorld ballWorld;


public Ball(int x, int y, int r){
centerX = x;
centerY = y;
radius = r;
velX = 10;
velY = 20;
preassure = 10;
}

public Ball(int x, int y, int r, Color c, BallWorld world){
centerX = x;
centerY = y;
radius = r;
color = c;
velX = 10;
velY = 20;
preassure = 10;
ballWorld = world;
world.addBall(this);
world.repaint();
}

public void move(){
try{Thread.sleep(500);}catch(Exception e){}
centerX = centerX + velX;
centerY = centerY + velY;
if (ballWorld != null) ballWorld.repaint();
}

public void move(int steps){
for(int i = 0; i<steps; i= i+1)
move();
}

public int getVelX(){
return velX;
}

public int getVelY(){
return velY;
}

public void setVelX(int vx){
velX = vx;
}

public void setVelY(int vy){
velY = vy;
}

public int getCenterX(){
return centerX;
}

public int getCenterY(){
return centerY;
}

public int getRadius(){
return radius;
}

public void setRadius(int r){
radius=r;
}

public void inflate(){
try{Thread.sleep(300);}catch(Exception e){}
radius = radius + preassure;
if(ballWorld !=null) ballWorld.repaint();
}

public void setPreassure(int x){
preassure = x;
}

public void report(){
System.out.println("Ball with radius "+radius+
" and coordinates ("+ centerX +","+centerY+ ")");
}

public void paint(Graphics pen){
pen.setColor(color);
pen.fillOval(centerX-radius, centerY-radius, 2*radius, 2*radius);
}
}

Med vänliga hälsningar Anders


Svara

Sv: Java problem

Postades av 2002-11-03 14:27:20 - Peter Ramström

Jag antar att du ska skapa en ny boll.
<code>Ball myBall = new Ball(100,200,20);</code>


Svara

Sv: Java problem

Postades av 2002-11-03 14:30:35 - Anders Bengtsson

hmm tack det var ju inte så svårt
ett annat problem nu om jag anropar BallWorld så öppnas ett fönster där jag vill få fram min boll. för att göra detta anropar jag Ball igen.
Som jag fattar det så ska jag kalla på

public Ball(int x, int y, int r, Color c, BallWorld world){
centerX = x;
centerY = y;
radius = r;
color = c;
velX = 10;
velY = 20;
preassure = 10;
ballWorld = world;
world.addBall(this);
world.repaint();
}

men jag får inte rätt på det
hur ska jag skriva

Ball testBoll = new Ball(100,200,20,?, ?);
hur ska jag skriva där ? är


Svara

Sv: Java problem

Postades av 2002-11-03 16:04:03 - Peter Ramström

Hello.
Som det ser ut så måste du använda den konstuktorn för att visa bollen.
Jag antar att du har tillgång till BallWorld klassen,
då är det bara skapa en ny BallWorld och skicka med på samma sätt som med Ball, typ:
<code>BallWorld myBallWorld = new BallWorld();</code>
Du får kolla i BallWorld vilka parameterkrav som gäller för instansiering.

Sen är det bara att skapa en boll med myBallWorld, tex en röd boll:
<code>Ball testBoll = new Ball(100,200,20,new Color(0xff0000), myBallWorld);</code>

Peter


Svara

Sv: Java problem

Postades av 2002-11-03 16:09:24 - Anders Bengtsson

Så här ser BallWorld ut, får inte rätt på det

import java.util.*;
import java.awt.*;
import java.awt.event.*;

class BallWorld extends Frame{

private static final int WIDTH = 600;
private static final int HEIGHT= 700;
private Vector theBalls;

public BallWorld(){
setSize(WIDTH,HEIGHT);
new StickyQuiter("South",this,"Quit",Color.black);
setBackground(Color.white);
theBalls = new Vector();
setVisible(true);
}

public void addBall(Ball b){
theBalls.addElement(b);
}

public void paint(Graphics g){
for(int i = 0;i<theBalls.size();i++){
((Ball)theBalls.elementAt(i)).paint(g);
}
}

}


class StickyQuiter extends Button implements ActionListener{

public StickyQuiter(String place, Frame f){
super("bye ...");
f.add(place,this);
addActionListener(this);
}

public StickyQuiter(String place, Frame f, String label, Color c){
super(label);
setForeground(Color.black);
f.add(place,this);
addActionListener(this);
}

public void actionPerformed(ActionEvent e){
System.exit(0);
}

}


Svara

Sv: Java problem

Postades av 2002-11-04 16:58:23 - Peter Ramström


>Så här ser BallWorld ut, får inte rätt på det

Vad får du inte rätt på? Det finns bara en konstruktor i BallWorld. Nämligen BallWorld().

Eller är det något annat fel?

Peter


Svara

Sv: Java problem

Postades av 2002-11-04 17:39:45 - Anders Bengtsson

Detta är problemet jag har fått.

För att kunna se de bollar Du skapar skall Du använda en BallWorld. En sådan är ett fönster där de bollarna som skapas i världen syns som runda och färgade objekt.

Så, gör ett program där du skapar en instans av klassen BallWorld (kalla den för theWorld, konstrueraren för BallWorld tar inga argument).
Skapa också en instans av klassen Ball som tillhör denna värld. Till detta finns en konstruerare som tar som argument inte bara centrums
koordinater och bollens radies, utom också en färg och den BallWorld bollen skall tillhöra.

Genom att skriva så här:

public class Bollen{
public static void main(String[] argv){
BallWorld myBallWorld = new BallWorld(); //får fram fönstert
}

}

Men jag kan inte få mina bollar att synas, hur ska jag göra för att få en boll in i fönstrat


Svara

Sv: Java problem

Postades av 2002-11-04 19:19:57 - Peter Ramström

Ok, det du verkar glömma är att du måste instansiera Ball classen.

<code>public class Bollen{
public static void main(String[] argv){
BallWorld myBallWorld = new BallWorld(); //får fram fönstert
/*
här instansierar du bollen. OCH använder BallWorld som parameter
så att den röda fina bollen har någonstans att leva i.
*/
Ball b = new Ball(200,200,20,new java.awt.Color(0xff0000),myBallWorld);
}</code>


Lycka till


Peter.




Svara

Sv: Java problem

Postades av 2002-11-04 21:03:32 - Anders Bengtsson

Aha tackar Peter funkade perfekt

ska skriva så att jag får bollen att flytta sig tre gånger, alltså ge bollen nya värden, Får dock inte rätt på det.


Svara

Sv: Java problem

Postades av 2002-11-04 22:11:20 - Peter Ramström

Hello.

Det låter mer och mer som om du har en uppgift från skolan!? :-)

Hur som helst så tror jag du fått en metod som gör just detta åt dig i classen Ball, move heter den.
om jag inte minns helt fel så tar den en int som anger hur många steg bollen ska flyttas.

peter


Svara

Sv: Java problem

Postades av 2002-11-04 22:13:59 - Anders Bengtsson

Japp exakt en skoluppgift, fast det är bara en övning vi har ingen inlämning eller så, men jag har suttit länge nu, så jag har börjat fatta det nu. Mycket tack vare att du hjälpte mig. Tackar


Svara

Nyligen

  • 14:16 Indian online casino
  • 14:15 Indian online casino
  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 845
27 961
271 763
663
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies