ExtJSで楽しくRIA業務アプリ開発

株式会社sus4 開発チーム

タグ ‘ビジネスExtJS’ 一覧

ExtJS入門24 エディタブル・グリッドの基本(グリッドパネルをエディタブル・グリッドに変更)

without comments

このエントリーを含むはてなブックマークはてなブックマーク - ExtJS入門24 エディタブル・グリッドの基本(グリッドパネルをエディタブル・グリッドに変更) この記事をクリップ!Livedoorクリップ - ExtJS入門24 エディタブル・グリッドの基本(グリッドパネルをエディタブル・グリッドに変更) Yahoo!ブックマークに登録 BuzzurlにブックマークBuzzurlにブックマーク このエントリをつぶやくこのWebページのtweets Share on Tumblr FC2ブックマークへ追加 newsing it! この記事をChoix! Googleブックマークに追加 Bookmark this on Delicious Digg This

今回はエディタブル・グリッド(エディター・グリッド)の紹介です。エディタブルとエディターはどっちの方が正しいのかわかりませんが。クラス名はエディター・グリッドなのですが、ここではエディタブル・グリッドで統一します。
エディタブル・グリッドはグリッドの内容をグリッド上で直接編集する機能です。一般的にはカラムのダブルクリックで編集することが多いと思います。今回は以前紹介したグリッドへの追加と削除をベースにエディタブル・グリッドに変更します。

エディタブル・グリッド

エディタブル・グリッド

ExtJS フォームの基本とExtJS入門23を先にご覧下さい。

グリッドパネル関連の過去の記事はこちらからです。

リファレンスはこちらから
ExtJS -3.0 日本語APIドキュメント – Ext.grid.EditorGridPanelクラス
http://extdocs.xenophy.com/?class=Ext.grid.EditorGridPanel

Read the rest of this entry »

  • Share/Bookmark

佐竹 裕行

1982年生まれ。滋賀→はこだて→名古屋→大垣→名古屋。
2006年名古屋学芸大学映像メディア学科卒、その後IAMAS卒(Studio2、6期生)。2009年にsus4に入社。学生時代はMax/MSP JitterやGainerばっかり使っていたが、現在社内では主にExtとモバイル開発、動画サービスのバックエンドを担当。知る人ぞ知るアノ鍵の人。

ExJS入門21 グリッド・セレクション・モデル

with 4 comments

このエントリーを含むはてなブックマークはてなブックマーク - ExJS入門21 グリッド・セレクション・モデル この記事をクリップ!Livedoorクリップ - ExJS入門21 グリッド・セレクション・モデル Yahoo!ブックマークに登録 BuzzurlにブックマークBuzzurlにブックマーク このエントリをつぶやくこのWebページのtweets Share on Tumblr FC2ブックマークへ追加 newsing it! この記事をChoix! Googleブックマークに追加 Bookmark this on Delicious Digg This

グリッド関連4回目は、セレクションモデルを設定して、行の選択状態を取得する簡単なサンプルです。
ExtJSのグリッドの様々なセレクションモデルを設定して、行の選択の仕方を指定します。今回は一番基本となる、単一の行を選択するセレクションモデルを設定して、その行の情報を取り出すようにします。以前に紹介したグリッドのサンプルではセレクションモデルが明示的に設定されていないためグリッドのデフォルトのセレクションモデルが自動的に設定されていました。実際に試してもらうと分かりやすいのですが、Ctrlもしくはcommandキーを押しながらクリックすると複数選択ができます。
今回のサンプルではセレクションモデルを独自に設定して、一行だけを選択するようにします。

セレクションモデル

セレクションモデル

Read the rest of this entry »

  • Share/Bookmark

佐竹 裕行

1982年生まれ。滋賀→はこだて→名古屋→大垣→名古屋。
2006年名古屋学芸大学映像メディア学科卒、その後IAMAS卒(Studio2、6期生)。2009年にsus4に入社。学生時代はMax/MSP JitterやGainerばっかり使っていたが、現在社内では主にExtとモバイル開発、動画サービスのバックエンドを担当。知る人ぞ知るアノ鍵の人。

第5回ExtJS勉強会@名古屋 2/25 パネル内のエレメントを作成する

with 2 comments

このエントリーを含むはてなブックマークはてなブックマーク - 第5回ExtJS勉強会@名古屋 2/25 パネル内のエレメントを作成する この記事をクリップ!Livedoorクリップ - 第5回ExtJS勉強会@名古屋 2/25 パネル内のエレメントを作成する Yahoo!ブックマークに登録 BuzzurlにブックマークBuzzurlにブックマーク このエントリをつぶやくこのWebページのtweets Share on Tumblr FC2ブックマークへ追加 newsing it! この記事をChoix! Googleブックマークに追加 Bookmark this on Delicious Digg This

第4回ExtJS勉強会@名古屋のチュートリアルセクション用の資料用のまとめです。
前回までのセッションでパネルを作るところまで行きました。今回はそのパネルの中に表示するHTML要素を生成するためのクラスを中心に扱います。クラスとしては以下の3つが中心になります。

Ext.XTemplateではHTMLをテンプレートと記述して、パネルに設定します。
Ext.DomHelperではDOMの追加や削除を行います。
Ext.DataView,ListViewはストアの内容をパネルに配置する簡単な方法を紹介します。

前回までのセッションのまとめはこちらです。

第2回ExtJS勉強会@名古屋 勉強会Ext.onReadyからはじめるExtJSのまとめ

第3回ExtJS勉強会@名古屋 11/27 Ext.Panelからはじめるコンポーネントの基礎

各チュートリアル記事へのリンク

・ExtJS入門10 Ext.XTemplateを使う
http://extjs.blog.sus4.co.jp/2009/12/03/extjs-tutorial10/

・ExtJS入門11 Ext.XtemplateでJS内のテンプレートを使う
http://extjs.blog.sus4.co.jp/2009/12/04/extjs-tutorial11/

・ExtJS入門13 Ext.DomHelperの使い方
http://extjs.blog.sus4.co.jp/2010/01/14/extjs-tutorial13-domhelper1/

・ExtJS入門14 DomHelperの使い方2
http://extjs.blog.sus4.co.jp/2010/01/14/extjs-tutorial14-domhelper2/

・ExtJS入門14 DomHelperの使い方3 
http://extjs.blog.sus4.co.jp/2010/02/25/extjs-domhelper-insert-remove/

・ExtJS入門15 DataViewの使い方
http://extjs.blog.sus4.co.jp/2010/01/26/extjs-tutrorial15/

・ExtJS入門16 ListViewの使い方
http://extjs.blog.sus4.co.jp/2010/01/27/extjs-tutorial16/

  • Share/Bookmark

佐竹 裕行

1982年生まれ。滋賀→はこだて→名古屋→大垣→名古屋。
2006年名古屋学芸大学映像メディア学科卒、その後IAMAS卒(Studio2、6期生)。2009年にsus4に入社。学生時代はMax/MSP JitterやGainerばっかり使っていたが、現在社内では主にExtとモバイル開発、動画サービスのバックエンドを担当。知る人ぞ知るアノ鍵の人。

第4回ExtJS勉強会@名古屋(2010年1月)を開催します

without comments

このエントリーを含むはてなブックマークはてなブックマーク - 第4回ExtJS勉強会@名古屋(2010年1月)を開催します この記事をクリップ!Livedoorクリップ - 第4回ExtJS勉強会@名古屋(2010年1月)を開催します Yahoo!ブックマークに登録 BuzzurlにブックマークBuzzurlにブックマーク このエントリをつぶやくこのWebページのtweets Share on Tumblr FC2ブックマークへ追加 newsing it! この記事をChoix! Googleブックマークに追加 Bookmark this on Delicious Digg This

ExtJSユーザーの皆様、あけましておめでとうございます。
2009年12月は、名古屋の勉強会を開催しませんでしたので、2ヶ月間あいてしまいましたが、2010年1月28日(木)に第4回ExtJS名古屋勉強会を開催します。
今回は、株式会社ニューキャストさんのご好意により、セミナールームを借りて開催することになりました。

ExtJS3.1もリリースされ、ますます注目度が増すExtJSを名古屋から盛り上げて行きましょう。

詳細情報については、ExtJSウェブサイトをご覧下さい。

  • Share/Bookmark

野村 亮之

2004年 名古屋市立大学芸術工学部在学中に株式会社sus4を設立・取締役に就任(現職)。2005年同大学を卒業。
デザイン視点でのウェブサービスの在り方をアプローチの基本として、さまざまなウェブサービス構築に従事。
2006年8月日本初のオンライン動画編集サービスClipCast(http://clipcast.jp/)を開始。2009年7月OTSベース動画解析サービスVideoAnalytics(http://video-analytics.jp/)を開始。
2009年8月Ext Japan LLCにてSenior Software Architectに就任。

Written by 野村 亮之

1 月 12th, 2010 at 12:40 am

ExtJS入門11 Ext.XtemplateでJS内のテンプレートを使う

without comments

このエントリーを含むはてなブックマークはてなブックマーク - ExtJS入門11 Ext.XtemplateでJS内のテンプレートを使う この記事をクリップ!Livedoorクリップ - ExtJS入門11 Ext.XtemplateでJS内のテンプレートを使う Yahoo!ブックマークに登録 BuzzurlにブックマークBuzzurlにブックマーク このエントリをつぶやくこのWebページのtweets Share on Tumblr FC2ブックマークへ追加 newsing it! この記事をChoix! Googleブックマークに追加 Bookmark this on Delicious Digg This

前回はExt.XTemplateクラスのfromメソッドでHTML内のファイルをテンプレートに使いましたが、今回はJavascriptのファイル内にテンプレートを書く方法を紹介します。

前回の記事
ExtJS入門10 Ext.XTemplateを使う

Ext.XTemplateクラス – Ext 3.0 – API Documentation 日本語版
http://extdocs.xenophy.com/?class=Ext.XTemplate

・HTML


<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>ExtJS名古屋勉強会 xtemplateの使い方(Javascript内のテンプレート)</title>

    <!--Ext JS CSS-->
    <link rel="stylesheet" href="../js/ext/resources/css/ext-all.css" type="text/css" />
    <!--Ext JS-->
    <script type="text/javascript" src="../js/ext/adapter/ext/ext-base.js"></script>
    <script type="text/javascript" src="../js/ext/ext-all.js"></script>
    <!--my App JS-->
    <script type="text/javascript" src="xtemplate-new.js"></script>
</head>
<body>
<h1 style="background-color:#BDD3EF;">JS内のテンプレートを使ったXTempalte</h1>
	<div id="tpl-target">
	</div>
</body>
</html>

・Javascript


Ext.onReady(function(){
    var data = {
        name:'株式会社sus4',
        url:'http://www.sus4.co.jp',
    };

    /**
     * テンプレート
     * 中括弧でdataオブジェクトのプロパティ名を指定する。
     * js内の文字列でテンプレートを指定する場合は,
     * new Ext.XTemplate(テンプレート文字列)とする。newしないとエラーになります。
     * カンマで区切ることで複数行に渡ってテンプレート文字列を書くことができます。
     * 最後にカンマがつくとエラーになります。
     */
    var tpl = new Ext.XTemplate(
        '<h2>リンクを作る</h2>',
        '<a href="{url}">{name}</a>',
        '<h2>テーブルを作る</h2>',
        '<table>',
        '<tr>',
            '<th style="padding:3px;">{name}:</th><td>{url}</td>',
        '</tr>',
        '</table>'
    );

    //htmlファイルに作った要素のIDを指定
    var tplHtml = tpl.apply(data);
    var panel = new Ext.Panel({
		renderTo:'tpl-target',
        title:'テンプレートを使ったパネル',
        bodyStyle:'padding:20px',
        html:tplHtml
    });
});

・実行結果

Ext.XTemplateでJS内にテンプレートを書く

Ext.XTemplateでJS内にテンプレートを書く

Ext.XTemplateのテンプレートはJavascript内に記述しています。


var tpl = new Ext.XTemplate(
        '<h2>リンクを作る</h2>',
        '<a href="{url}">{name}</a>',
        '<h2>テーブルを作る</h2>',
        '<table>',
        '<tr>',
            '<th style="padding:3px;">{name}:</th><td>{url}</td>',
        '</tr>',
        '</table>'
    );

文字列でテンプレートとなるHTMLを記述しています。テンプレート文字列が長くなって改行する場合は一旦文字列を区切って「,」(カンマ)で新しい文字列を連結して書いていきます。
例:


new Ext.XTemplate(
   '文字列',
   ’文字列’
);

文字列を区切らずそのまま改行するとエラーになります。連結した最後の文字列のあとにカンマがついてもダメです。
データの設定する箇所は「{}」(中括弧)でデータオブジェクトのプロパティ名を指定します。
HTMLファイルにテンプレートを記述する、Ext.XTemplate.from()ではnewしていませんでしたが、JSファイル内に文字列としてテンプレートを記述して使う場合はnewしなければいけません。Ext.XTemaplate.from()メソッドを使うとHTMLに描いた文字列からテンプレートオブジェクトを生成して返しているためnewしなくても良かったのですが、今回は自分できちんとnewして文字列からテンプレートオブジェクトを生成します。

あとはExt.XTemplate.fromと同じようにapplyでデータの設定して、パネルの要素に設定しています。

  • Share/Bookmark

佐竹 裕行

1982年生まれ。滋賀→はこだて→名古屋→大垣→名古屋。
2006年名古屋学芸大学映像メディア学科卒、その後IAMAS卒(Studio2、6期生)。2009年にsus4に入社。学生時代はMax/MSP JitterやGainerばっかり使っていたが、現在社内では主にExtとモバイル開発、動画サービスのバックエンドを担当。知る人ぞ知るアノ鍵の人。

ExtJSのことを話す上での基礎用語について – Part1

without comments

このエントリーを含むはてなブックマークはてなブックマーク - ExtJSのことを話す上での基礎用語について &#8211; Part1 この記事をクリップ!Livedoorクリップ - ExtJSのことを話す上での基礎用語について &#8211; Part1 Yahoo!ブックマークに登録 BuzzurlにブックマークBuzzurlにブックマーク このエントリをつぶやくこのWebページのtweets Share on Tumblr FC2ブックマークへ追加 newsing it! この記事をChoix! Googleブックマークに追加 Bookmark this on Delicious Digg This

ExtJSを話題にするうえで、覚えておくべきいくつかの知識があります。
技術者対営業、営業対エンドユーザー、技術者対エンドユーザーなど、ビジネスを進めていく上でいろいろな場面が考えられるとおもいますが、共通の言葉を作っておくと話が早い場合もあります。

今回は、まとめて紹介していきます。
どちらかというと、営業向けの言葉説明なので、技術者には物足りない内容かもしれないです。

1.RIA

リッチインターネットアプリケーション。3年か4年前から盛んに言われるようになって来た言葉です。それまでのHTMLベースのウェブアプリケーションに対して、よりネイティブアプリケーションっぽい動きをするWebアプリケーションの総称でよいと思います。
このRIAを実現する技術としては、Flash、FlexなどのFlashプラグインを利用するアプリケーション、Sliverlightプラグインを利用するアプリケーションと、Ajaxを利用するJavaScriptベースのアプリケーションが代表的なものとなります。
ウェブ上で、リッチな体験を提供するというのが言葉の中に含まれる定義ですね。

僕が業務系RIAを説明するときは、今まで当たり前にできていた業務をウェブアプリに置き換えても、当たり前に同じことができることですと伝えます。

2.Ajax

先ほどの説明に出てきましたが、Ajaxというのは、JavaScriptに関しての言葉です。
Wikiの説明ですと

Ajax(エイジャックス、アジャックス)は、ウェブブラウザ内で非同期通信とインターフェイスの構築などを行う技術の総称。XMLHttpRequestHTTP通信を行うためのJavaScript組み込みクラス)による非同期通信を利用し、通信結果に応じてダイナミックHTMLで動的にページの一部を書き換えるというアプローチを取る。

という感じになります。
今までのHTMLベースのウェブアプリケーションは、情報を送信するのに、ページ全体を書き換える必要がありましたが、このAjax技術を使うと、ページ内でいつでもサーバへの通信が可能で、ページ内の一部を動的に変更することができます。
これが、ネイティブアプリケーションっぽくウェブアプリケーションを振舞わせることができる核の技術です。

3.ライブラリとフレームワーク

前にお話をしているときに、フレームワークとライブラリの違いってなんですかと聞かれたことがあるので、、、

Wikiによるフレームワークの説明:

Web アプリケーションフレームワークWeb Application Framework)は、動的な ウェブサイトWebアプリケーションWebサービス開発をサポートするために設計されたアプリケーションフレームワークである。 フレームワークの目的は、Web 開発で用いられる共通した作業に伴う労力を軽減することである。たとえば、多数のフレームワークがデータベースへのアクセスのためのライブラリや、テンプレーティング フレームワーク、セッション管理を提供し、コードの再利用を促進させるものもある。

Wikiによるライブラリの説明:

ライブラリは、汎用性の高い複数のプログラムを、再利用可能な形でひとまとまりにしたものである。一般にライブラリは、それ単体ではプログラムとして動作させることはできないので実行ファイルではない。ライブラリは他のプログラムに何らかの機能を提供するコードの集まりと言うことができる。ソースコードの場合と、オブジェクトコード、あるいは専用の形式を用いる場合とがある。たとえば、UNIXのライブラリはオブジェクトコードをarと呼ばれるアーカイバでひとまとめにして利用する。

んー、これだとなかなかわかりにくいですね。

近年登場してきているJavaScriptを快適に書くためのライブラリ・フレームワークを上げてみると、

  • Prototypeは、昔JavaScriptライブラリといわれていたような気がしたのですが、いつの間にかフレームワークになっています。
  • jQueryは、WikiではJavaScriptライブラリといわれていますね。
  • ちょっと毛色が違いますが、YUIはUIライブラリといっていますね。
  • Dojoは最近、Core, digit, DojoXに分かれてるみたいですね。3つあわせると、フレームワークとよばれるっぽいですね。

どちらかというと、スクリプトを書くときにサポートしてくれる機能が寄り集まったものをライブラリといい、アプリケーション自体をそれで完結できるもの(JavaScriptの場合は、クライアントサイドのコード全体をまかなえると考えれば適当かもしれません)をフレームワークといっているようです。

ちょうど、ExtJSでいうと、ExtCoreに関しては、ライブラリといったほうがよさそうで、ExtJSはフレームワークといえそうですね。

なんだかまとまりのない感じになってしまいましたが、とりあえず簡単に3つ紹介してみました。次回は、JavaScriptに関する言葉をもう少し解説していきます。

  • Share/Bookmark

野村 亮之

2004年 名古屋市立大学芸術工学部在学中に株式会社sus4を設立・取締役に就任(現職)。2005年同大学を卒業。
デザイン視点でのウェブサービスの在り方をアプローチの基本として、さまざまなウェブサービス構築に従事。
2006年8月日本初のオンライン動画編集サービスClipCast(http://clipcast.jp/)を開始。2009年7月OTSベース動画解析サービスVideoAnalytics(http://video-analytics.jp/)を開始。
2009年8月Ext Japan LLCにてSenior Software Architectに就任。

Written by 野村 亮之

10 月 17th, 2009 at 9:01 pm

Get Adobe Flash playerPlugin by wpburn.com wordpress themes