前回 2014/12/30は1日前
編集中に移動したときマーカーが置いてけぼりになるのを修正
編集中に画像追加したら編集終了するようにした
図形の追加は図形追加ボタンにした
先端の形を選べるようにした
編集中なら先端の変更もできるようにした
サイズ変更時の描画処理は割にあわないくらい重いので廃止した
サイズ変更後と画像移動後に背景を再描画するようにした
ExPictureBoxクラスで初めてメソッド(関数?)らしきものを使った
1.4MBもあるアニメーションgif
少し変えた
描画する線の種類
実際に使えるのは上にある4種類だけ
その下のアルファベット表記の項目は予定でまだ機能しない
図形の編集中に変更しても無視されるので図形追加時専用
先端の形
VBに最初から入っているもの全部入れてみたけどよくわからないものがある
指定しても形が変わらないものがある
終端の形もあるけどまだ書いていないので機能しない
移動先で図形の頂点を動かした時に自然な背景になった
この処理はめんどくさいかと思っていたけど簡単だった
PictureBoxを継承して作ったExPictureBoxクラスに図形の描画設定を保存している
その中のPenの設定で
Penには色、太さ、先端形状、終端形状とかいろいろな要素がある
その中の先端形状を指定するときにはドロップボックスからにしている
選ぶときには英語じゃなくて日本語で選びたいので(今思ったけど英語日本語関係ないな)
列挙型は書いた順番に番号が割り振られるのでドロップボックスのインデックスの番号と一致するから都合がいい
ドロップボックスに列挙したものを追加する時は
Dim ec As String() = [Enum].GetNames(GetType(ExPictureBox.PenCap))
Me.ComboBoxEndCap.Items.AddRange(ec)
このGetNamesは初めてかな、GetTypeはエクセルではよく使っていたけど…こういう使い方もあるんだ
参照したところ
ドロップボックスから選択された時に受け取ったpencapはそのままではPenの設定に使えないので英語のLineCapに変換
Private Function PenCap2LineCap(pc As PenCap) As Drawing2D.LineCap
これで受け取ったPenCapプロパティをLineCapに変換してそれぞれ保存
図形を描画するときにはそれらを設定したPenだけがあればいいので
クラス側でExPenってのを作っておいてそこで設定を詰め込んで渡している?
新しいことだらけでわかってないけど、いろいろいじっているうちに動くようになったw
図形の頂点移動でリアルタイムで画像サイズを変更するのをやめて手動にしてからずいぶん楽になったというか順調に進むようになった、諦めが肝心
ダウンロード先1
ダウンロード先2(ヤフーボックス)
ヤフーボックスで不便なのが
ブログを書いている途中でファイルをアップロードしようとすると
パスワード入力を求められるので入力してアップロード
ブログにファイルのアドレスを書いて
さあ、ブログ記事かけたぞーって決定ボタンを押すと不正なアクセスとか言われて
書いた記事が消えてしまう
なので書いている途中の記事を一旦投稿してから
ファイルをアップロードしてアドレスを取得して記事を修正でアドレス記入
ってめんどくさい
アップロードしてから記事を書けばいいんだけど書いている途中でもいろいろ調整しながらだからなあ
パネルアタック31
次回 2015/01/01は1日後