Napis pływający w poziomie odbijający się od brzegów apletu
Skrypt tworzy Aplet Java wyświetlający tekst płynący w poziomie odbijający się od brzegów apletu.
Aby stworzyć Aplet Java tworzymy najpierw kod Java w pliku plik.class a następnie tworzymy odwołanie do niego w HTML poprzez znacznik <aplet></aplet>
Listing
//Kod HTML
<HTML>
<HEAD>
</HEAD>
<BODY>
<APPLET
code = "kodJava.class"
text = "Przykładowy tekst..."
fontsize = "30"
speedstep = "1"
width = "640"
height = "100">
</APPLET>
<BODY>
</HTML>
//Kod pliku kodJava.class
import java.awt.*;
import java.applet.*;
public
class FlowString extends Applet implements Runnable
{
int x, y, speedStep;
int appWidth, appHeight;
int strWidth, strHeight;
String napis;
Font fontTimesRoman;
Image img;
Graphics gDC, mDC;
boolean stopped = false;
public void init()
{
if((napis = getParameter("text")) == null)
napis = "Brak parametru text!";
String strFontSize;
int fontSize;
if((strFontSize = getParameter("fontsize")) == null)
strFontSize = "36";
try{
fontSize = Integer.parseInt(strFontSize);
}
catch(Exception e){
fontSize = 36;
}
String strSpeedStep;
if((strSpeedStep = getParameter("speedstep")) == null)
strSpeedStep = "1";
try{
speedStep = Integer.parseInt(strSpeedStep);
}
catch(Exception e){
speedStep = 1;
}
appWidth = getWidth();
appHeight = getHeight();
fontTimesRoman = new Font ("TimesRoman", Font.BOLD, fontSize);
img = createImage(appWidth, appHeight);
mDC = img.getGraphics();
gDC = getGraphics();
gDC.setFont(fontTimesRoman);
FontMetrics fm = gDC.getFontMetrics();
strHeight = fm.getHeight();
strWidth = fm.stringWidth(napis);
x = 0;
y = (int)((appHeight + strHeight) / 2);
}
public void start()
{
Thread thread = new Thread (this);
thread.start();
}
public void stop()
{
stopped = true;
}
public void run()
{
while (!stopped){
if ((x > appWidth - strWidth) || (x < 0)){
speedStep = -speedStep;
}
try{
Thread.sleep(1);
}
catch (InterruptedException e){
}
x += speedStep;
mDC.setColor(Color.white);
mDC.fillRect(0, 0, appWidth, appHeight);
mDC.setColor (Color.blue);
mDC.setFont (fontTimesRoman);
mDC.drawString (napis, x, y);
gDC.drawImage (img, 0, 0, this);
}
}
}
Dodano przez: igor
Ranga: Administrator serwisu Punktów: 0
Ranga: Administrator serwisu Punktów: 0
Komentarze użytkowników
:: Losowe artykuły
:: Wymiana linków
Modowe inspiracje |
Android Gry i Aplikacje |
ZaplanujTransport.pl: Przeprowadzki, transport, aukcje |
Logo dla firmy |
Change Tires - Car Weather Forecast Reminder |
Laminas: MVC Framework for PHP |
IT Books Reviews and Programming: JS, JAVA, PHP, ANDROID, CSS |
Katalog roślin |
Programming articles: JAVA, PHP, C++, Python, JavaScript |
Kancelaria Adwokacka Łukasz Huszno