2014年3月31日月曜日

開発環境

Head First Java 第2版 ―頭とからだで覚えるJavaの基本(Kathy Sierra (著)、Bert Bates (著)、島田 秋雄 (監修)、神戸 博之 (監修)、高坂 一城 (監修)、夏目 大 (翻訳)、オライリージャパン)の12章(GUIの基礎)、プールパズル(p.396))をDartで考えてみる。

その他参考書籍

プールパズル(p.396)

コード

sample.dart

import 'dart:html';
import 'dart:async' as async;

void main() {
  div..append(canvas);
  div.style
      ..width = '650px'
      ..border = 'solid';
  run.style.width = '650px';
  run.onClick.listen((MouseEvent event) {
    x = 1;
    y = 1;
    draw();
  });
}

DivElement div = querySelector('#d0');
ButtonElement run = querySelector('#run_dart');
CanvasElement canvas = new CanvasElement(width: 650, height: 325);
CanvasRenderingContext2D ctx = canvas.context2D;
int x;
int y;
async.Timer t;

void draw() {
  if (x <= 325) {
    ctx
        ..fillStyle = 'white'
        ..strokeStyle = 'white'
        ..fillRect(1, 1, 648, 323)
        ..fill()
        ..fillStyle = 'blue'
        ..strokeStyle = 'blue'
        ..fillRect(x, y, 650 - 2 * x, 325 - 2 * y)
        ..fill();
    x += 2;
    y += 1;
    t = new async.Timer(new Duration(milliseconds: 10), draw);
  }
}

0 コメント:

コメントを投稿