Twitter用クライアント TLBar (表示専用、.NET Framework 4使用、oAuth認証)
ダウンロード
動作環境
.NET Framework 4以降が導入されている必要があります。
下記サイトなどからインストールして下さい。
Download Microsoft .NET Framework 4 (Web インストーラー) from Official Microsoft Download Center
インストール方法
インストーラは付属しておりません。
ダウンロードした圧縮ファイルを適当なフォルダに展開してご利用ください。
使い方
最初にTLBarを起動すると、認証画面が開きます。ここで認証を行わないと使用できません。
認証されると画面の下の方に半透明の黒いウィンドウが表示されます。
ここに最新20件のタイムラインがスクロールされながら表示されます。
終了する場合は、ウィンドウ上で右クリック→終了(Q)を選ぶと、終了します。
認証に失敗していた場合は、ウィンドウ上で右クリック→認証設定(S)を選ぶと、もう一度認証画面が開くので、認証を行って下さい。
更新履歴
Ver.0.0.0.1(2010/10/16)
- 暫定版公開
コーディング規約(C#用メモ)
一定周期のループを安定させる方法(C#用メモ)
一定周期の処理を行いたいとき、タイマーを使えば良いのですが、より精度の高い周期で処理を行いたい場合は、次のような方法が考えられます。
これはゲームなどで、1フレーム(1回の画面の更新)の長さを1/60秒に保つために、良く用いられる方法です。
// 次に処理するフレームの時刻(初回は即処理するので初期値は現在時刻をセット) double nextFrame = (double)System.Environment.TickCount; // フレームを処理する周期(1/60秒) float period = 1000f / 60f; // メインループ while ( true ) { // 現在の時刻を取得 double tickCount = (double)System.Environment.TickCount; // 次に処理するフレームの時刻まで間がある場合は、処理をスキップする if (tickCount < nextFrame) { // 1ms以上の間があるか? if (nextFrame - tickCount > 1) { // Sleepする System.Threading.Thread.Sleep( (int)(nextFrame - tickCount) ); } // Windowsメッセージを処理させる Application.DoEvents(); // 残りの処理をスキップする continue; } // // ここで描画以外の計算処理を行う。 // // この時点で現在の時刻が次のフレームの時刻より後ならば、 // このフレームを描画している暇はないので、描画しないでスキップする if ((double)System.Environment.TickCount >= nextFrame + period) { nextFrame += period; continue; } // // ここで描画処理を行う。 // // 次のフレームの時刻を計算する nextFrame += period; }
構造体のリストの値を変更する方法(C#用メモ)
構造体のリストの値を変更するとき、forループの中で構造体のメンバを直接さわることが出来ないので、次のような方法で変更します。
// 構造体の定義 struct SampleData { public bool Status; } // 構造体のリストの定義 private List<SampleData> sampleData = new List<SampleData>(); // forループで値を変更する for (int i = 0; i < sampleData.Count(); i++) { // 本当は下記のようにしたいが、これだとエラーになる //sampleData[i].Status = true; // 下記のようにすることで、変更できる SampleData tmpData = sampleData[i]; tmpData.Status = true; sampleData[i] = tmpData; }
フォームのスタイル(C#用メモ)
(自分用メモ)
C#で良く使いそうなフォームのスタイル変更方法のメモ。
// フォームの不透明度を変更する this.Opacity = 0.75; // 75% // 常に手前に表示 this.TopMost = true; // 最大化ボタン非表示 this.MaximizeBox = false; // 最小化ボタン非表示 this.MinimizeBox = false; // コントロールボックス(タイトルバー、最小化、最大化ボタンなど)非表示 this.ControlBox = false; // タスクバーにフォームを表示しない this.ShowInTaskbar = false; // フォームの境界線を無しにする this.FormBorderStyle = FormBorderStyle.None; // フォームの背景色を変更する this.BackColor = System.Drawing.Color.Black; // 黒 // フォームの横幅を変更する this.Width = 48; // フォームの縦幅を変更する this.Height = 48; // フォームの位置を変更する this.Left = 100; this.Top = 100;