読者です 読者をやめる 読者になる 読者になる

ObjeqtNote #10 カスタムコントロールの定義

ユーザコントロールは独自のウィンドウクラスなのに対し、カスタムコントロールは既存のウィンドウクラスをベースにウィンドウプロシージャを差し替えて作る・・・。CustomControl.hでは、 CWindowの派生クラスCCustomControlを定義・・・。 既定のウィンド…

VizCommand #5 ユーザコントロールの定義

VizCommandにもユーザコントロールを配置する・・・。 そして、AoiやObjeqtNoteで進めていた部分を一部(メニュー周りは要らないので除く)反映する・・・。まず、UserControl.hを追加・・・。 ここは変わらず・・・。UserControl.cppも、 ここも変わらない・…

ObjeqtNote #9 ユーザコントロールの定義

いずれかのウィンドウを親に持ち、独自のウィンドウクラスから作られた子ウィンドウを、ここでは独自に"ユーザコントロール"とする・・・。(一般的なユーザコントロールと意味は違うかもしれないけど・・・。)UserControl.hで、 CWindow派生のCUserControlは…

Aoi #8 標準的なウィンドウ

こちらにもCStandardWindowを導入・・・。で、こんな感じで変わらない・・・。・標準的なウィンドウ · bg1bgst333/Aoi@52c0b1a · GitHub

ObjeqtNote #8 標準的なウィンドウ

とりあえずメニュー付きのウィンドウを標準的なウィンドウとしてCStandardWindowにまとめる・・・。StandardWindow.hを追加して、CMenuWindowから、nID付きのRegisterClass、コンストラクタ、Create、OnCreateだけ引き継ぐ・・・。RegisterClassでクラス名に…

ObjeqtNote #7 メニューアイテムが選択された時の処理

こちらもメニューアイテムが選択された時の処理を実装・・・。例えば、アプリケーションの終了を選択すると、"アプリケーションの終了"というメッセージボックスが表示される・・・。・メニューアイテムが選択された時の処理 · bg1bgst333/ObjeqtNote@26143c…

Aoi #7 メニューアイテムが選択された時の処理

これまでメニューアイテムを押しても、反応しないようにしていた・・・。 アイテムが選択された時の処理を実装する・・・。MenuBar.hは、それぞれのメニューアイテムが選択された時のハンドラを追加・・・。MenuBar.cppは、OnCommandMenuItemで、IDごとにswi…

ObjeqtNote #6 メニューの設置(動的に作成する場合)

ObjeqtNoteも動的メニュー対応・・・。Aoiとやってることは同じ・・・。 (もうめんどいから同じ場合はコード載せない・・・。)・メニューの設置(動的に作成する場合) · bg1bgst333/ObjeqtNote@5e2b956 · GitHub

Aoi #6 メニューの設置(動的に作成する場合)

#5では、ウィンドウクラスに静的にメニューリソースを指定していた・・・。 今回は動的にメニューを作成して、ウィンドウに設置したい場合・・・。MenuBar.hを追加し、メニューハンドルと、設置するウィンドウハンドルをもつメニューバーオブジェクトを定義…

Zinc #3 URLバーの設置 & Navigateボタンの設置

次は、URLバーとWebページをロードするNavigateボタンを設置する・・・。activity_main.xmlは、まず、中に横方向のLinearLayoutを追加・・・。 urlBarはlayout_weight="1"、navigateButtonはlayout_width="wrap_content"として、navigateButtonの左にurlBar…

Zinc #2 WebViewの設置

Webページの表示にはWebViewを使う・・・。activity_main.xmlは、外側は縦にレイアウトを作っていくのでLinearLayoutに変更・・・。 中にWebViewを画面いっぱいに配置・・・。idはwebView・・・。 LinearLayoutのpaddingの値が16dpになっているが、余白は要…

第3回おおば会 & わんくまでセッションデビューしてきました。

昨日、午前中、ちょこっとおおばさんの会に参加してきました。atnd.orgこのパターン pic.twitter.com/5rA32Phell— B.G (@miu_hiro_) 2017年1月21日午後セッションに向けて朝飯 pic.twitter.com/1SXopFAfNk— B.G (@miu_hiro_) 2017年1月21日本物の酢酸先生と…

Zinc #1 新生Zinc & アクティビティの表示

あらためて、Zincも作り直し・・・。そして、そして、そして、編集したのは、app/build.gradleで、apkのファイル名をアプリ名(zinc.apk)にしたぐらいかな・・・。こんな感じ・・・。・新生Zinc · bg1bgst333/Zinc@d43a7c7 · GitHub

変数

Pythonも宣言はない・・・。変数への代入 - 変数 - Python入門というより初期化された時点で作成される感じか・・・。 $ vi variable.pyとし、valに123をセットした時点で変数が生成・・・。 pythonのprintは改行してしまうので、今回は値だけ出力・・・。 $…

変数

Rubyも宣言なく、直接変数を使える・・・。変数と定数 (Ruby 2.4.0) $ vi variable.rbとし、Rubyは$とか付けずに変数名valだけ・・・。 valに123を代入して、printに渡す・・・。 こちらのprintも改行しないので、 $ ruby variable.rb val = 123 $このように…

変数

Perlには変数の型の宣言が必要ないので、そのまま最初から変数に値を代入することができる・・・。perldata - Perl のデータ型 - perldoc.jp変数に値を入れて出力してみる・・・。 $ vi variable.plとし、Perlの変数は頭に$を付ける・・・。 スカラー変数と…

print

続いてPython・・・。 しばらくはPython2を前提とする・・・。Python2のprintはprint文であり、括弧なしで使う・・・。6. 単純文 (simple statement) — Python 2.7.x ドキュメント $ vi print.pyとして、Python2だと括弧はいらないが、Python3だとprint関数…

print

次はRuby・・・。こちらも出力用にprintがある・・・。module Kernel (Ruby 2.4.0)正確には、Kernelモジュールのモジュール関数のひとつらしい・・・。 $ vi print.rbで開いて、printのあとの括弧内に文字列"ABCDE"と置いてるが、括弧は省略していいらしい・…

print

突然ですが、スクリプト系言語をやることに・・・。 まず、Perlから・・・。Perlの組み込み関数 print の翻訳 - perldoc.jp文字列を出力をするにはprintを使う・・・。 $ vi print.plとviで開いて、1行目の"#!"のあとにperlコマンドのパスを付けるとperlスク…

ObjeqtNote #5 メニューの設置

ObjeqtNoteもメニューを付ける・・・。WinMain.cppの、と、StandardApplication.cppの、これ以外はAoiと変わらない・・・。"ファイル"を押すと、こうなる・・・。・メニューの設置 · bg1bgst333/ObjeqtNote@d4c725d · GitHub

Aoi #5 メニューの設置

メニューを設置する・・・。まず、StandardApplication.hを追加・・・。あと、MenuWindow.hも追加・・・。リソースを追加・・・。Menu・・・。"ファイル"、そして、その下に"新規"を追加・・・。IDは、ID_FILE_NEWとする・・・。"開く"は、ID_FILE_OPEN・・…

VizCommand #4 基本となるアプリケーションとウィンドウ

VizCommandも・・・。と、これ以外一緒・・・。・基本となるアプリケーションとウィンドウ · bg1bgst333/VizCommand@1c276ce · GitHub

ObjeqtNote #4 基本となるアプリケーションとウィンドウ

ObjeqtNoteもCBasicApplicationとCBasicWindowを導入・・・。と、これ以外は、Aoiと一緒・・・。・基本となるアプリケーションとウィンドウ · bg1bgst333/ObjeqtNote@2cefb3d · GitHub

Aoi #4 基本となるアプリケーションとウィンドウ

基本的なアプリケーションに使うクラスをCBasicApplicationとし、CApplicationを継承元とする・・・。 また、基本的なウィンドウ(メニューは付かない)に使うクラスをCBasicWindowとし、CWindowを継承元とする・・・。まず、Window.hに、lpctszClassName省略…

VizCommand #3 ダイナミックウィンドウプロシージャ化

VizCommandにも導入・・・。とし、で、こんな感じ・・・。・ダイナミックウィンドウプロシージャ化 · bg1bgst333/VizCommand@0ded94f · GitHub

ObjeqtNote #3 ダイナミックウィンドウプロシージャ化

ObjeqtNoteもダイナミックウィンドウプロシージャに・・・。Window.hは、と、Aoiと同じ・・・。Window.cppも、StaticWindowProcなど、だいたいAoiと同じ・・・。表示も変わらない・・・。・ダイナミックウィンドウプロシージャ化 · bg1bgst333/ObjeqtNote@29…

Aoi #3 ダイナミックウィンドウプロシージャ化

まだ普通のウィンドウプロシージャでメッセージ処理していたので、ウィンドウオブジェクトごとに振り分けるダイナミックウィンドウプロシージャを導入・・・。Window.hは、ウィンドウハンドルをキーとし、CWindowオブジェクトポインタを値とするマップm_mapW…

VizCommand #2 ウィンドウクラス化 & アプリケーションクラス化

VizCommandもクラス化・・・。WinMain.cppは、Application.cppは、で、それ以外は、Aoi、ObjeqtNoteと同じ・・・。表示は変わらず・・・。・ウィンドウクラス化 · bg1bgst333/VizCommand@97ce517 · GitHub

ObjeqtNote #2 ウィンドウクラス化 & アプリケーションクラス化

ObjeqtNoteもクラス化・・・。といっても、Aoiとの違いは、WinMain.cppの、と、Application.cppの、ぐらい・・・。ウィンドウの表示は変わらず・・・。・ウィンドウクラス化 · bg1bgst333/ObjeqtNote@624a719 · GitHub

Aoi #2 ウィンドウクラス化 & アプリケーションクラス化

WinMain.cppだけのウィンドウ表示から、ウィンドウクラスとアプリケーションクラスによるウィンドウ表示に書き換える・・・。まず、Window.hは、今回、ウィンドウの位置とサイズのメンバを追加・・・。 あと、一応コンストラクタも追加・・・。 あとは、ウィ…

VizCommand #1 新生VizCommand & ウィンドウの表示

『VizCommand』も改めて組み直し・・・。 UIの構成が難しいが、機能優先にしたいところ・・・。Win32プロジェクトの空のプロジェクトでWinMain.cppを追加して、とし、バージョン情報も、として、ウィンドウ表示・・・。・新生VizCommand · bg1bgst333/VizCom…

ObjeqtNote #1 新生ObjeqtNote & ウィンドウの表示

『ObjeqtNote』も作り直し・・・。 『Aoi』とどう役割分担するか、まだ悩み中・・・。 こちらはどんどん機能載せていきたい・・・。Win32プロジェクトの空のプロジェクトでWinMain.cppを追加して、と、『Aoi』とほぼ一緒・・・。バージョン情報も、こんな感…

Aoi #1 新生Aoi & ウィンドウの表示

新年(ブログの日付上)1発目は、Application開発の仕切り直しから・・・。テキストエディタ『Aoi』の作り直し・・・。プロジェクトの作成・・・。 gitのレポジトリのトップにプロジェクトを作るように変更・・・。でも変わらず空のプロジェクト・・・。ソース…

WebChromeClient

今度は、WebChromeClientを継承したCustomWebChromeClientクラスを定義して、やってみる・・・。WebChromeClient | Android DevelopersClass追加で、で、コンストラクタで、contextからactivityにキャストして、findViewByIdで、progressTextViewを取得・・…

WebView.setWebChromeClient

WebChromeClientも、WebViewのカスタマイズに関するオブジェクトだが、こちらはWebページのロード進捗や、faviconなど、UIに関するものが多い・・・。setWebChromeClientで新たにWebChromeClient派生のオブジェクトをセットして、Webページのロード進捗を表…

WebViewClient.shouldOverrideUrlLoading

shouldOverrideUrlLoadingは、ロードするURLが変わった時に呼ばれる・・・。WebViewClient | Android Developersこれまでは、リンクをクリックしたり、リダイレクトが発生しても、URLバーのURLがそのままだったが、今回はURLが変わるたびに更新する・・・。C…

WebViewClient

WebViewClientを継承した派生クラスをつくることで、ロード時のさまざまな処理をカスタマイズできる・・・。WebViewClient | Android Developersレイアウトや文字リソースなどはそのままに、Classを追加・・・。WebViewClientをベースとしたCustomWebViewCli…

WebView.setWebViewClient

普通にWebViewでロードしようとすると、サイトによってはChromeを起動してしまう場合がある・・・。Googleはそのまま表示される・・・。しかし、Yahoo Japanの場合、Chromeを起動して、そっちでロードしてしまう・・・。そういう場合、WebViewClientのshould…

WebView.loadUrl

久しぶりにWebViewについて・・・。WebView.loadUrlで指定のURLのWebページをロードできる・・・。WebView | Android Developers普通のWebサイトのページは、WebViewの項でロードできたが、ローカルHTMLファイルの場合はどうだろう・・・。activity_main.xml…

GPDWIN 東奔西走

GPD WIN Advent Calendar 2016の25日目です・・・。www.adventar.orgGPDWINとの出会いからこれまでを振り返ってみましょうか・・・。最初にGPDWINの話が出始めたのは2月ですかね・・・?butsuyoku-gadget.com最初はこういうクラウドファンディングに出資した…

カスタム牛めし

松屋 Advent Calendar 2016の24日目です。www.adventar.org全然準備の時間が無かったので、今回は私のカスタム牛めしを紹介・・・。まず、前提として、もともとは大学時代に販売されていた豚めしにこのカスタムをしていました・・・。 (豚めしは牛めしに比べ…

TextView.hint

TextViewのhint属性を使うと、EditTextで入力されていない状態の時に、入力を促すヒント文字列を表示できる・・・。TextView | Android DevelopersこっちもなぜかEditTextじゃなくてTextView・・・。strings.xmlに、文字列リソースとして、edittext1_hintを…

TextView.inputType

TextViewのinputType属性で、EditTextなどの入力に使うデフォルトのキーボード表示を指定し、入力制限などを行うことができる・・・。TextView | Android Developersなぜ、EditTextではなく、TextViewに用意されてるのかはわからないが・・・。activity_main…

2代目 geanee WPJ40-10 開封の儀

Windows 10 Mobile / Windows Phone Advent Calendar 2016の21日目です。www.adventar.orgAndroidの仕事で忙しくて、Windows10Mobileについては、まったく触れられませんでした・・・。 そこで今回は先日注文した2代目(2台目)WPJ40-10の開封の儀について書き…

TextView.textStyle

ボールド(太字)、イタリック(斜体)、ぐらいの文字スタイルなら、textStyleで設定できる・・・。TextView | Android Developersactivity_main.xmlで、textview1にはnormal(通常)、textview2にはbold(太字)、textview3にはitalic(斜体)をセット・・・。真ん中…

TextView.textColor

文字の色はtextColorで設定する・・・。TextView | Android Developersまず、XMLを追加・・・。colors.xmlとして、colorリソースのredを8桁の16進数で定義・・・。activity_main.xmlは、textview1は、android:textColor="@color/red"でリソースから赤をセッ…

TextView.textSize

文字の大きさはtextSizeで設定する・・・。TextView | Android Developersstrings.xmlで、textview1_text~textview3_textを定義・・・。XMLを追加・・・。dimens.xmlを追加・・・。 これは、dpやspなどの寸法をあらかじめ定義しておくリソースファイル・・…

TextView.text

基本に立ち返って・・・。TextViewのXML属性textには、TextViewに表示する文字列を指定する・・・。TextView | Android Developersstrings.xmlには、nameを"textview1_text"として、"ABC"という文字列をリソース定義・・・。activity_main.xmlでは、textview…

Bundle

Bundleは、あるオブジェクトから別のオブジェクトに複数のパラメータを渡すのに便利なクラス・・・。Bundle | Android Developersいろいろなところで使われるが、今回はIntentで起動したActivityにパラメータを渡す・・・。activity_main.xmlで、strings.xml…

Application

アプリケーションの開始から終了まで、永続的にデータを保持していたい場合、Activityのメンバに持っていても、Activityは常に破棄される可能性があるので、その時にデータも消えてしまう・・・。Application | Android DevelopersApplicationクラスなら、開…