Activity.onPrepareDialog

Activity.onCreateDialogはダイアログ生成時に呼ばれるが、Activity.onPrepareDialogはダイアログを表示する前の準備段階で呼ばれる。Activity | Android DevelopersonCreateDialogは生成時の1回だけだが、onPrepareDialogは何度も表示する度にその前の呼ば…

AlertDialog.Builder.setMessage

AlertDialog.Builder.setMessageでダイアログの本文をセットする。AlertDialog.Builder | Android Developersキー"message"の値もダイアログの本文としてセットする。messageをセットするようにすると、button1 clicked!"button1 clicked!"となったり、butto…

AlertDialog.Builder.setTitle

AlertDialog.Builder.setTitleでダイアログのタイトルをセットできる。AlertDialog.Builder | Android Developersキー"title"の値をダイアログのタイトルとしてセットする。どちらのダイアログもtitleをセットするようにしている。 button1だと、dialog1とな…

Activity.onCreateDialog(id, args)

Activity.showDialogで渡されたID(id)とBundle(args)はActivity.onCreateDialogに渡される。Activity | Android DevelopersBundleで渡す引数を増やしてみる。"title"に加えて、"message"も渡す。キー"message"の値もトーストで表示。 button1を押すと、title…

Activity.showDialog(id, args)

Activity.showDialogは引数としてID以外に、Bundleを渡すことで追加の引数を渡すことができる。Activity | Android DevelopersIDとBundleは、onCreateDialogに渡され、そこで処理することで振る舞いを切り替えることができる。activity_main.xmlで、Buttonを…

SetWindowRgn

SetWindowRgnを使うとウィンドウの指定のリージョンの部分のみ表示するようになる。 つまりウィンドウを非矩形なリージョンの形にできるということ。SetWindowRgn function (winuser.h) - Win32 apps | Microsoft DocsSetWindowRgnに指定したリージョンはシ…

Aoi32(0, 0, 6, 6/Osaki #65) -入力内容が変更されている状態でメニューアイテムの"開く"を選択された時の挙動.

変更状態で"開く"を押すと、結構ややこしいことになるので、その部分の処理を書いた。変更されている場合は、保存するかどうかダイアログを表示し、"はい"なら保存、"いいえ"なら保存しない、"キャンセル"ならその先の処理をしない、という分岐をする必要が…

SelectClipRgn

SelectClipRgnを使うことで、指定のデバイスコンテキストの描画領域を、指定されたリージョンの部分のみにできる。SelectClipRgn function (wingdi.h) - Win32 apps | Microsoft Docs楕円と矩形を結合したリージョンを選択すれば、画像を描画しても結合した…

CombineRgn

CombineRgnは、2つのリージョンを結合する。CombineRgn function (wingdi.h) - Win32 apps | Microsoft DocsWM_CREATEで、第1引数が結合先リージョン、第2引数が1つ目、第3引数が2つ目で、大体は1つ目のリージョンに2つ目のリージョンを結合するパターンであ…

CreateEllipticRgn

CreateEllipticRgnは、楕円形のリージョンを生成する。CreateEllipticRgn function (wingdi.h) - Win32 apps | Microsoft DocsWM_CREATEで、楕円リージョンhRgnと赤いブラシhBrush。 WM_PAINTで、SelectObjectでhBrushを選択して、PaintRgnでhRgnを描画。楕…

FrameRgn

FrameRgnは、リージョンの境界線を指定のブラシで描画する。FrameRgn function (wingdi.h) - Win32 apps | Microsoft Docsブラシ、縦線の太さ、横線の太さを指定できる。今回は、赤いブラシと青いフレーム用ブラシの2種類を用意。 // 画面の描画を要求された…

FillRgn

FillRgnは、指定されたブラシでリージョンを描画する。FillRgn function (wingdi.h) - Win32 apps | Microsoft DocsWM_CREATEで、こちらでも赤いブラシを作成。WM_PAINTで、こちらではFillRgnにhBrushを直接指定。赤いブラシで描画赤いブラシで描画された。S…

PaintRgn

PaintRgnは、指定されたデバイスコンテキストに設定されているブラシやペンでリージョンを描画する。PaintRgn function (wingdi.h) - Win32 apps | Microsoft DocsWM_CREATEで、リージョンとともに、赤いブラシも生成。WM_PAINTは、SelectObjectでhDCに赤い…

Polygon

Polygonは指定された頂点を持つ閉じた多角形を描画する。Polygon function (wingdi.h) - Win32 apps | Microsoft Docs5つの頂点をPOINTの配列ptで指定する。 WM_CREATEで、頂点、そしてペンやブラシをセット。 WM_PAINTで、Polygonでptと頂点の数を指定する…

access

ファイルのアクセス権限をチェックするにはaccessを使う。Man page of ACCESS呼び出し元プロセスから見てアクセスできるかを判定する模様。 (基本的に実行したユーザってことかな・・・。)test.txtを普通に作った時のアクセス権限をチェックする。第2引数が…

unlink

ファイルの削除はunlinkで行う。Man page of UNLINKシンボリックリンクや、名前付きパイプなど、ファイルシステム上名前の付いているものは削除できる。 というか名前を削除して、その名前が参照しているファイル実体も削除するといったほうがいいかな・・・…

mknod

mknodで空のファイルを作成する。Man page of MKNOD通常ファイルも特殊ファイル(名前付きパイプやデバイスやソケットなど)も作成できる。今回は"test.txt"とパイプ"TEST1"を作成する。 ファイル名、そして付与するパーミッションを指定。 デバイスの場合、第…

symlink

symlinkはシンボリックリンクを作成する。Man page of SYMLINKシンボリックリンクが指し示すファイルパス、そしてシンボリックリンク名を指定する。成功すると0が返る。 $ pwd /home/bg1/project/cloud/github.com/Sample/unixsyscall/symlink/symlink/src/s…

mkdir

mkdirはディレクトリを作成する。Man page of MKDIRディレクトリを作成するときに、アクセス権限も指定する。これで、 $ vi mkdir.c $ gcc mkdir.c -o mkdir $ ls mkdir mkdir.c $ ./mkdir mkdir success! $ ls mkdir mkdir.c test_dir $ ls -al 合計 36 drw…

rename

renameは、ファイル名の変更や移動に使う。Man page of RENAMEファイル名"test.txt"を"test1.txt"に変更する。これで、 $ vi rename.c $ gcc rename.c -o rename $ ls rename rename.c $ vi test.txt $ cat test.txt ABCDE $ ls rename rename.c test.txt $ …

2019年の振り返り

2019年はお世話になりました。 2020年もよろしくお願いいたします。もうすでにこれを書いてる時は明けているんですが・・・。 兄の急逝 まずは、2019年、振り返ると、ここでも書かなかったのですが、やはり兄が8月7日に亡くなったのが大きいです。 喪中です…

dup

dupはファイルディスクリプタを複製する。Man page of DUP"test.txt"をopenで開いて、その時のファイルディスクリプタをdupに渡すと、新しいファイルディスクリプタが返される。 そのファイルディスクリプタも"test.txt"を指すので、複製といえる。"ABC"を古…

kill

killは、プロセスにシグナルを送る。Man page of KILL名前からして、プロセスを終了させるシステムコールに感じそうだが、必ずしもそうではない。 あくまで、シグナルを送るのであって、送るシグナルがプロセス終了の場合が多いだけ。forkをして、親プロセス…

pause

pauseはシグナルが発生するまで待つ。Man page of PAUSESIGALRMが発生するまで待つ。10秒経ったらSIGALRMが発生するので、それまで待っているかどうか。 $ pwd /home/bg1/project/cloud/github.com/Sample/unixsyscall/pause/pause/src/pause $ ls pause.c $…

Activity.onCreateDialog

Activity.showDialogを呼ぶと、Activity.onCreateDialogが呼ばれ、中でダイアログ生成処理が行われるが、showDialogに渡すIDを切り替えることで、onCreateDialogに渡るIDの違いによって生成するダイアログのスタイルを変えることが出来る。Activity | Android…

SetROP2

SetROP2を使うと、背景色の上に描画色を描画する時の、ビットピクセル操作のモードを変更できる。 (こういう処理をラスタオペレーションというらしい。)SetROP2 function (wingdi.h) | Microsoft Docs ラスタオペレーションWM_PAINTで、 // 画面の描画を要求…

Activity.showDialog

AlertDialogを直接showするのは、本当はよろしくないようなので、Activity.showDialogを使う。 (といっても、これもdeprecatedされてるのだが。)Activity | Android Developers AlertDialog#show()とActivity#showDialog() - nakawai’s diaryActivityにダイ…

Canvas

WPF

Canvasの上に、座標を指定してコントロールを配置する。Canvas Class (System.Windows.Controls) | Microsoft Docs WPF4.5入門 その14 「レイアウトコントロールのCanvasとStackPanel」 - かずきのBlog@hatena座標を指定Canvasの中にButtonを配置して、Butto…

Graphics.drawString

GraphicsクラスのdrawStringで文字列を描画する。Graphics (Java Platform SE 6)いくつか描画してみる。3つの文字列を、変数を経由したり、ずらしたりしながら描画。3つの文字列を描画描画できた。Sample/java/Graphics/drawString/src/Graphics at master ·…

名前付き引数

C#

C#4.0では、オプション引数に加えて、名前付き引数が導入された。名前付き引数と省略可能な引数 - C# プログラミング ガイド | Microsoft Docs オプション引数・名前付き引数 - C# によるプログラミング入門 | ++C++; // 未確認飛行 C引数名を指定できるので…