Android
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, EX203!</string>
<string name="app_name">匯率換算</string>
<string name="str1">匯率換算</string>
<string name="str2">匯率</string>
<string name="str3">臺幣</string>
<string name="str_btn1">可兌換美金</string>
</resources>
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:text="@string/str2"
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TextView>
<EditText
android:layout_height="wrap_content"
android:id="@+id/editText1"
android:text=""
android:layout_width="match_parent">
</EditText>
<TextView
android:text="@string/str3"
android:layout_height="wrap_content"
android:id="@+id/textView2"
android:layout_width="wrap_content">
</TextView>
<EditText
android:layout_height="wrap_content"
android:id="@+id/editText2"
android:text=""
android:layout_width="match_parent">
</EditText>
<Button
android:text="計算台幣兌換美金"
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</Button>
<TextView
android:text="@string/str_btn1"
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TextView>
</LinearLayout>
Try3.java
package Try.T;
import java.text.NumberFormat;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Try3 extends Activity {
private EditText ed1, ed2;
private Button btn1;
private TextView tv1;
public static final String MY_PREFS = "mSharedPreferences01";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ed1 = (EditText)Try3.this.findViewById(R.id.editText1); // 匯率
ed2 = (EditText)Try3.this.findViewById(R.id.editText2); // 台幣
btn1 = (Button)Try3.this.findViewById(R.id.button1);
tv1 = (TextView)Try3.this.findViewById(R.id.textView3);
ed1.setText("33.5");
ed2.setText("10000");
btn1.setOnClickListener(new Button.OnClickListener()
{
public void onClick(View arg0)
{
btn1.setWidth(70);
// 按鈕事件,處理數學換算的語法
//NumberFormat nf = NumberFormat.getInstance();
//nf.setMaximumFractionDigits( 2 );
//double d = Double.parseDouble(ed2.getText().toString()) / Double.parseDouble(ed1.getText().toString());
//tv1.setText( Try3.this.getResources().getString(R.string.str3) + ":" + nf.format(d) );
}
});
}
}
2011-05-27
2011-05-06
2011/05/06
import javax.swing.Timer;
import java.awt.event.*;
import java.util.*;
import java.awt.*;
import javax.swing.*;
public class TimerDemoI extends JFrame implements ActionListener {
Timer t = new Timer(1000,this);
static JTextField tf1=new JTextField();
TimerDemoI() {
t.start();
}
public static void main(String args[]) {
TimerDemoI td = new TimerDemoI();
GridLayout grid33=new GridLayout(3,3);
td.setLayout(grid33);
td.setSize(450,450);
JPanel p1 = new JPanel(grid33);
p1.add(tf1);
td.add(p1);
td.setVisible(true);
java.awt.Frame dummy = new java.awt.Frame();
//dummy.setSize(300,225);
//dummy.add(tf1);
// dummy.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == t) {
Date da=Calendar.getInstance().getTime();
tf1.setText(da.toString());
// tf1.setText("Being ticked " + Calendar.getInstance().getTime());
// ↑上禮拜的方式 在Cal...前面加上字串(即"XX") 可不用再轉date string這些
// 原先前面的/007去掉就不再會有聲音
}
}
}
==================================================================
一開就反白
import ij.*;
import java.applet.*;
import java.awt.*;
import ij.process.*;
/**Simple applet that demonstrates how to use ImageJ's ImageProcessor class.*/
public class IPDemo extends Applet {
String name;
Image img;
ImageProcessor ip = null;
public void init() {
setLayout(new BorderLayout());
Panel p = new Panel();
p.setLayout(new GridLayout(5, 3));
/*
p.add(new Button("Reset"));
p.add(new Button("Flip"));
p.add(new Button("Invert"));
p.add(new Button("Lighten"));
p.add(new Button("Darken"));
p.add(new Button("Rotate"));
p.add(new Button("Zoom In"));
p.add(new Button("Zoom Out"));
p.add(new Button("Threshsold"));
p.add(new Button("Smooth"));
p.add(new Button("Sharpen"));
p.add(new Button("Find Edges"));
p.add(new Button("Macro 1"));
p.add(new Button("Macro 2"));
p.add(new Button("Add Noise"));
add("South", p);
*/
name = getParameter("img");
img = getImage(getDocumentBase(), name);
MediaTracker tracker = new MediaTracker(this);
tracker.addImage(img, 0);
try {tracker.waitForID(0);}
catch (InterruptedException e){}
if (name.endsWith("jpg"))
ip = new ColorProcessor(img);
else
ip = new ByteProcessor(img);
ip.snapshot();
ip.invert();
img = ip.createImage(); //從下面綠色抓上來
repaint();
}
public void update(Graphics g) {
paint(g);
}
public void paint(Graphics g) {
g.drawImage(img, 0, 0, this);
}
/*
public boolean action(Event e, Object arg) {
if (e.target instanceof Button) {
String label = (String)arg;
if (label.equals("Reset"))
ip.reset();
else if (label.equals("Flip"))
ip.flipVertical();
else if (label.equals("Invert"))
ip.invert();
else if (label.equals("Lighten"))
ip.multiply(1.1);
else if (label.equals("Darken"))
ip.multiply(0.9);
else if (label.equals("Rotate"))
ip.rotate(30);
else if (label.equals("Zoom In"))
ip.scale(1.2, 1.2);
else if (label.equals("Zoom Out"))
ip.scale(0.8, 0.8);
else if (label.equals("Threshsold"))
ip.autoThreshold();
else if (label.equals("Smooth"))
ip.smooth();
else if (label.equals("Sharpen"))
ip.sharpen();
else if (label.equals("Find Edges"))
ip.findEdges();
else if (label.equals("Macro 1"))
macro1();
else if (label.equals("Macro 2"))
macro2();
else if (label.equals("Add Noise"))
ip.noise(20);
img = ip.createImage();
repaint();
return true;
}
return false;
}
*/
void updateAndDraw() {
img.flush();
img = ip.createImage();
getGraphics().drawImage(img, 0, 0, this);
}
void macro1() {
for (int i=10; i<=360; i+=10) {
ip.reset();
ip.rotate(i);
updateAndDraw();
}
}
void macro2() {
double scale = 1, m = 1.2;
for (int i=0; i<20; i++) {
ip.reset();
scale *= m;
ip.scale(scale, scale);
updateAndDraw();
}
for (int i=0; i <20; i++) {
ip.reset();
scale /= m;
ip.scale(scale, scale);
updateAndDraw();
}
}
}
import java.awt.event.*;
import java.util.*;
import java.awt.*;
import javax.swing.*;
public class TimerDemoI extends JFrame implements ActionListener {
Timer t = new Timer(1000,this);
static JTextField tf1=new JTextField();
TimerDemoI() {
t.start();
}
public static void main(String args[]) {
TimerDemoI td = new TimerDemoI();
GridLayout grid33=new GridLayout(3,3);
td.setLayout(grid33);
td.setSize(450,450);
JPanel p1 = new JPanel(grid33);
p1.add(tf1);
td.add(p1);
td.setVisible(true);
java.awt.Frame dummy = new java.awt.Frame();
//dummy.setSize(300,225);
//dummy.add(tf1);
// dummy.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == t) {
Date da=Calendar.getInstance().getTime();
tf1.setText(da.toString());
// tf1.setText("Being ticked " + Calendar.getInstance().getTime());
// ↑上禮拜的方式 在Cal...前面加上字串(即"XX") 可不用再轉date string這些
// 原先前面的/007去掉就不再會有聲音
}
}
}
==================================================================
一開就反白
import ij.*;
import java.applet.*;
import java.awt.*;
import ij.process.*;
/**Simple applet that demonstrates how to use ImageJ's ImageProcessor class.*/
public class IPDemo extends Applet {
String name;
Image img;
ImageProcessor ip = null;
public void init() {
setLayout(new BorderLayout());
Panel p = new Panel();
p.setLayout(new GridLayout(5, 3));
/*
p.add(new Button("Reset"));
p.add(new Button("Flip"));
p.add(new Button("Invert"));
p.add(new Button("Lighten"));
p.add(new Button("Darken"));
p.add(new Button("Rotate"));
p.add(new Button("Zoom In"));
p.add(new Button("Zoom Out"));
p.add(new Button("Threshsold"));
p.add(new Button("Smooth"));
p.add(new Button("Sharpen"));
p.add(new Button("Find Edges"));
p.add(new Button("Macro 1"));
p.add(new Button("Macro 2"));
p.add(new Button("Add Noise"));
add("South", p);
*/
name = getParameter("img");
img = getImage(getDocumentBase(), name);
MediaTracker tracker = new MediaTracker(this);
tracker.addImage(img, 0);
try {tracker.waitForID(0);}
catch (InterruptedException e){}
if (name.endsWith("jpg"))
ip = new ColorProcessor(img);
else
ip = new ByteProcessor(img);
ip.snapshot();
ip.invert();
img = ip.createImage(); //從下面綠色抓上來
repaint();
}
public void update(Graphics g) {
paint(g);
}
public void paint(Graphics g) {
g.drawImage(img, 0, 0, this);
}
/*
public boolean action(Event e, Object arg) {
if (e.target instanceof Button) {
String label = (String)arg;
if (label.equals("Reset"))
ip.reset();
else if (label.equals("Flip"))
ip.flipVertical();
else if (label.equals("Invert"))
ip.invert();
else if (label.equals("Lighten"))
ip.multiply(1.1);
else if (label.equals("Darken"))
ip.multiply(0.9);
else if (label.equals("Rotate"))
ip.rotate(30);
else if (label.equals("Zoom In"))
ip.scale(1.2, 1.2);
else if (label.equals("Zoom Out"))
ip.scale(0.8, 0.8);
else if (label.equals("Threshsold"))
ip.autoThreshold();
else if (label.equals("Smooth"))
ip.smooth();
else if (label.equals("Sharpen"))
ip.sharpen();
else if (label.equals("Find Edges"))
ip.findEdges();
else if (label.equals("Macro 1"))
macro1();
else if (label.equals("Macro 2"))
macro2();
else if (label.equals("Add Noise"))
ip.noise(20);
img = ip.createImage();
repaint();
return true;
}
return false;
}
*/
void updateAndDraw() {
img.flush();
img = ip.createImage();
getGraphics().drawImage(img, 0, 0, this);
}
void macro1() {
for (int i=10; i<=360; i+=10) {
ip.reset();
ip.rotate(i);
updateAndDraw();
}
}
void macro2() {
double scale = 1, m = 1.2;
for (int i=0; i<20; i++) {
ip.reset();
scale *= m;
ip.scale(scale, scale);
updateAndDraw();
}
for (int i=0; i <20; i++) {
ip.reset();
scale /= m;
ip.scale(scale, scale);
updateAndDraw();
}
}
}
訂閱:
文章 (Atom)