Pokudaの長文
厳選 Visual Studioの便利なショートカット
エラー箇所にジャンプ
- 「Ctrl + Shift + F12」
ブレークポイント
- 設定/解除 「F9」
- 有効化/無効化 「Ctrl + F9」
ViEmu特有
- 「:ls」:バッファナンバーのリストを表示。
- 「:b2」:バッファ2のファイルを開く。
- 「:n」:次のバッファのファイルを開く。
- 「:N」:前のバッファのファイルを開く。
- 「:bui[ld]」:現在のソリューションをビルド。
- 「:prb」:現在のプロジェクトをビルド。
- 「:deb」:デバッグ実行。
【SQLServer】カンマ区切で文字列を分割し、N番目の文字列を取り出す方法
以下のSQLで実現できます。
DECLARE @test AS NVARCHAR(20)
SET @test = 'あいう,えお123え,4かきくけこ'
SELECT value FROM (
SELECT
ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS "id"
,value
FROM STRING_SPLIT(@test, ',')
) T WHERE [id] = 2
取得結果は、以下のとおりです。
【Sencha ExtJs】callSuper(), callParent()の振る舞いの違い
callSuper()とcallParent()メソッドの振る舞いの違いを整理してみました。
違いは、以下のとおりです。
callSuper()では、Overrideされた基底クラスのメソッドは呼ばれません。
・Override -> Base.
対してcallParent()では、Overrideされた基底クラスのメソッドが呼ばれます。
・Override -> Derived -> Base.
Ext.application({
name : 'Fiddle',
launch : function() {
var object = Ext.create('Ext.some.DerivedClass');
object.method();
}
});
/**
* 基底クラス
*/
Ext.define('Ext.some.Class', {
method: function() {
console.log('Base method');
}
});
/**
* 派生クラス
*/
Ext.define('Ext.some.DerivedClass', {
extend: 'Ext.some.Class',
method: function() {
console.log('Derived method.');
this.callParent();
}
});
/**
* 派生クラスをOverride
*/
Ext.define('App.paches.DerivedClass', {
override: 'Ext.some.DerivedClass',
method: function() {
console.log('Override method.');
//this.callSuper(); // Override -> Base.
this.callParent(); // Override -> Derived -> Base.
}
});
以下にデモ&ソースがあるので参考にしてみて下さい。
デモ&ソース【Sencha ExtJs Modern】Gridの列を通貨形式で表示する方法
Gridの列上で日本円の通貨形式で表示するサンプルを実装してみました。
「renderer」に表示形式をセットする処理を埋め込んで実装しています。
「renderer」に表示形式をセットする処理を埋め込んで実装しています。
Ext.application({
name: 'Fiddle',
launch: function() {
var store = Ext.create('Ext.data.Store', {
fields: ['name', 'email', 'phone'],
data: [{
'name': '橋元',
'email': 'hashimoto@xxx.com',
'phone': '55-3434-3434',
'salary': '5'
}, {
'name': '小西',
'email': 'konishi@xxx.com',
'phone': '33-3434-3434',
'salary': '8500000'
},{
'name': 'ポク田ポーク',
'email': 'pork@xxx.com',
'phone': '55-3434-3434',
'salary': '999999999'
}]
});
var grid = Ext.create('Ext.grid.Grid', {
title: '名簿',
store: store,
columns: [{
text: '名前',
width: 100,
dataIndex: 'name',
renderer: function(value, record, dataIndex, cell, column) {
console.log(value);
console.log(record.get('email'));
if (value == 'ポク田ポーク')
cell.element.dom.style.backgroundColor = "#99ccff";
else
cell.element.dom.style.backgroundColor = "#ccffcc";
return value;
}
}, {
text: 'Email',
width: 200,
dataIndex: 'email'
}, {
text: '電話番号',
width: 100,
dataIndex: 'phone'
}, {
text: '給料',
textAlign: 'right',
width: 150,
dataIndex: 'salary',
align: 'right',
renderer: function (value, record) {
var tmp = Ext.util.Format.number(value, '0,000');
if (tmp != '') {
var tmp = "¥" + tmp;
}
return tmp;
//return Ext.util.Format.currency(value, "¥");
}
}],
fullscreen: true,
renderTo: Ext.getBody()
});
}
});
以下にデモ&ソースがあるので参考にしてみて下さい。
デモ&ソース
デモ&ソース
Sencha ExtJs Modernで通貨入力のカスタムフィールドを実装
日本円の通貨入力のカスタムフィールドを実装してみました。

Ext.application({
name: 'Fiddle',
launch: function () {
console.log('start.');
Ext.define('User', {
extend: 'Ext.data.Model',
fields: [{
name: 'phone',
type: 'auto'
}],
});
var panel = Ext.create('Ext.form.Panel', {
fullscreen: true,
focusable: false,
items: [{
xtype: 'fieldset',
title: '通貨フィールドSample(日本円)',
items: [{
xtype: 'currency-field',
label: '金額',
}]
}]
});
}
});
Ext.define('Ext.ux.field.CurrencyField', {
extend: 'Ext.field.Text',
xtype: 'currency-field',
textAlign: 'right',
statics: {
PREFIX : '¥'
},
initialize: function() {
this.callParent(arguments);
},
/**
* カンマと¥を除去して値を取得
*/
getValue : function() {
var str = String(this.callSuper());
if (str) {
var num = parseFloat(str.replace(/[^\d\.-]/g,''));
num = isNaN(num) ? '' : num
return num;
}
return '';
},
/**
* フォーカスを失った時にカンマと¥を付与
*/
onBlur : function(obj, e, eOpts ) {
var str = String(this.getValue());
var tmp = Ext.util.Format.number(str, '0,000');
if (tmp !== '') {
var tmp = this.self.PREFIX + tmp;
}
this.setValue(tmp);
return this.callSuper(arguments);
},
/**
* フォーカスを得た時にカンマと¥を除去
*/
onFocus: function (obj, e, eOpts) {
this.setValue(this.getValue());
return this.callSuper(arguments);
}
});
以下にデモ&ソースがあるので参考にしてみて下さい。
デモ&ソース
デモ&ソース
登録:
投稿 (Atom)
POKUDA AI高画質化工房サポートページ
当製品に関する問い合わせはこのコメント欄へお願いします
-
イベント 説明 Resize コントロールのサイズが変更された時に発生。 SizeChanged Sizeプロパティが変更されたときに発生。 Layout コントロールが配置し直す時に発生。 上記の説明では、イマイチ違いが解らないので、実際に発生の順序の違いを調べました。 ●...
-
例えば、以下のような要望をよく耳にします。 「デバイス値を監視して稼働率を計測したい。」 「デバイス値を監視して予知保全に役立てたい。」 「複数の加工機を統括制御するような.Netプログラムを開発したい。」 このような背景から、C#でPLCと通信するためのプログラム環境構築に...
-
以下のSampleのとおり、ReadJEnc.JP.GetEncoding()メソッドで文字コードを自動判定することができます。 実装例 public void DetectingEncodeTest() { var path = @"C:\Te...