2011-05-27

2011/05/27

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-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();
        }
    }
   

}