カテゴリー別

お絵描き、デザイン

写真、動画関連ソフト

アメーバピグ専用ソフト

ホームページ関連

画像処理

スキャナー用

SEO 関連

お楽しみ

その他

過去ログ

2017年12月01日(金)

引き続き、ローカルブラウザのタブブラウザー化、その13

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

今日は、主にテストと不具合の修正をしました。

もう少しテストして、
ホームページを更新したら
公開できそうです。

お楽しみに。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

よくわからないけど
ローカルブラウザの新バージョンは、
javascript のエラーが
出にくくなったよーな気がするなー。

タブブラウジング機能を ON にしたからかな?

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月30日(木)

引き続き、ローカルブラウザのタブブラウザー化、その12

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

今日は、タブの位置をドラッグして移動する機能を実装しました。

オーナードローの部分のコードが長くなってきたので、
コードを分離したり、ドラッグ中にばんばん画面を
描き変えると、画面がちらついたので、
ダブルバッファリングしたりと、結構大変でした。

ダブルバッファリングというのは、
画面に直接描くかわりに、メモリー上に
完成イメージを構成してから
画面に転送する方式です。

例えば、画面を消去してから文字を描く場合、
画面に直接描くと、画面を消去した状態が
一瞬表示されるのでちらつきます。

一方、ダブルバッファリングでは、
完成イメージができてから一気に転送するので、
ほとんどちらつきません。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

さらに、ちらつきを軽減するには、
VSYNC を利用したりしますが、
普通のアプリケーションで
そこまでする必要はないでしょう。

VSYNC は垂直同期信号のことです。

画面に直接描く、とか書きましたが、厳密にはそうじゃなくて、
普通は画面用のビデオメモリーに記録していて
あるタイミングで実際の画面に一気に反映されます。

なので、反映中を避けてビデオメモリーに書き込めれば、
全くちらつかないとうことになります。

で、反映中かどうかのタイミングを知るのに、
VSYNC ってな信号を使うわけですな。

ま、良くは知らんけどw。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月28日(火)

引き続き、ローカルブラウザのタブブラウザー化、その11

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

今日も、デバッグや、UI の調整作業です。
(UI: ユーザーインタフェースの略、使い方にかかわる部分ね)

例えば、フォルダーツリーで選択中の項目を
クリックしたときの処理を改良しました。

これまでのバージョンでは、
選択中の項目をクリックすると
単純に、項目名の変更になります。

新しいバージョンでは、メインビューに
選択中の項目が表示されていない場合、
メインビューに表示し直します。

メインビューに選択中の項目が表示されている場合は、
これまでと同じく、項目名の変更になります。

なんとなく、文章で書くと難しそうですが、
使ってみると、自然で、カンタンです。

例えば、フォルダーツリーで a.html を選択すると
メインビューで、a.html が表示されます。

次に、a.html 内のリンクをクリックして、例えば
google.com に移動した場合、フォルダーツリーと
メインビューでは違う場所が表示されている状態になります。

その後、フォルダーツリーの a.html をクリックすると
名前を変更する代わりに、a.html を再表示します。

現在公開中のバージョンでは、別の項目を選択してから
同じものを選択しなおさないと a.html に戻れないので、
ちょっとだけ、使いやすくなると思います。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

だいぶ、不具合はなくなってきました。

とりあえず、タブに必須な機能は実装できましたが、
あるといい機能が、あと 2 つ。どしよっかな。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月27日(月)

引き続き、ローカルブラウザのタブブラウザー化、その10

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

今日も、UI の調整作業など。
(UI: ユーザーインタフェースの略、使い方にかかわる部分ね)

タブのデザインをちょっとだけ変更したり、
タブのツールチップを表示する機能を実装しました。

まぁ、別に難しいこともないんですけど、
コントロールによって、クセがあるので
なんだかんだで時間がかかったりします。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

一応、タブコントロールに
ツールチップを実装するときの
注意点でも書いときます。

About Tab Controls を読めばだいたい感じがつかめますが、
タブコントロールにツールチップ機能を持たせるには、
TCS_TOOLTIPS スタイルを指定するか、自分で作ったツールチップを
TCM_SETTOOLTIPS メッセージでタブコントロールに設定します。

ま、ここまでは難しくないですね。

で、テキストを設定するには、
TTN_GETDISPINFO 通知メッセージを処理します。

TTN_GETDISPINFO はタブの
親ウィンドウに送られます。

通知元は、ツールチップコントロールで、
タブコントロールではないので注意が必要です。

例えば、WTL で REFLECT_NOTIFICATIONS()
しても、タブコントロールにはメッセージが来ません。

素直に親ウィンドウで処理するか、
親ウィンドウからタブコントロールに
手動で通知する必要があります。

試してはいませんが、タブコントロールを
スーパークラス化 or サブクラス化して、
そこにリフレクトする方法もあるかもしれません。

ま、そんな感じでw。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月25日(土)

古い方のお問い合わせフォームを廃止しました

古い方のサーバーのお問い合わせフォームをテストしてみたら
機能してなかったので、完全に廃止しました。

旧、お問い合わせフォームの URL
http://www2.tbb.t-com.ne.jp/wizard/to.html
新、お問い合わせフォームの URL
http://sssoftware.main.jp/to.html

とはいえ、まだ古い方のページも存在していて、
開くと、新しい方のページに自動転送されます。

機能してなかったというのは、
送信の確認画面で本文が文字化けします。

さらに、そのまま送ると、正しく送れたような
メッセージが表示されますが、送れてません。

なので、古い方のフォームでメールを送っていて
返信の無い方は、私に届いていない可能性があります。

ちなみに、私にメールが届いていても、 返信に失敗した場合は、
ココ に書いてあるので、確認してみてください。

ちなみに、今日も返信できないお問い合わせが来ているので
お心あたりの方は、ココ を確認してみてくださいね。

返信できない方へのメッセージ欄
ご意見・ご要望連絡窓口


2017年11月23日(木)

引き続き、ローカルブラウザのタブブラウザー化、その8

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

やっぱり、今日も、コードの整理とデバッグ中です。

やはり、ビューが複数になると
コードを整理しないとわかりにくいです。

例えば、今までのコードでは、
HTML ビューのコードで HTML のタイトルが取得できたら、
メインウィンドウのキャプションを更新する。

みたいなコードでしたが、

新しい HTML ビューのコードでは、
タイトルが更新された場合、イベントを発生させる。

メインウィンドウのコードでは、
アクティブな HTML ビューのタイトルが更新されたイベントを
受けとるように設定し、イベントに応じてキャプションを書きかえる。

ように変更しました。

ビューが単一の場合、前者でも問題ない複雑さですが
複数になってくると、後者の実装にしないとスッキリしません。

どうスッキリするかというと、前者の場合、
ビューが複数あるため、タイトルが更新された
ビューがアクティブな場合だけ、メインウィンドウの
キャプションを更新するみたいなコードになります。

ところが、メインウィンドウのキャプションを
どういうときに更新するか判定するロジックは
本来、メインウィンドウが持つべきコードなので、
HTML のビューにあると、わかりづらいです。

よって、HTML のビューでは、タイトルが変わったことを
通知するコードのみに変更し、実際の処理は
メインウィンドウ側で行うコードに変更します。

また、タブブラウズ機能によって、ビューが複数になると、
ビューを切り変えたときにもキャプションを変更する必要があります。

これも同様に、タブ管理側のクラスに書くよりは、
メインウィンドウに書くべきロジックであり、
イベントの仕組みを使うことで、
同じようなスッキリしたコードを実現できます。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

ま、コツコツやるしかないわな。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月20日(月)

引き続き、ローカルブラウザのタブブラウザー化、その7

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

タブ化とはあまり関係ないのですが
細かい挙動に気に入らない部分があって
コードを整理しつつ、改修中です。

例えば、ショートカットファイルを表示してから
ローカルブラウザーを閉じて再起動すると、
フォルダーツリーで、リンク先が選択されるのを修正する予定です。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

タブ化によって、仕様が 1 段階複雑になったので、
コードをより構造化して、シンプルさを保たないと
とても、読みにくいコードになっちゃいます。

素早く完成させるには、
コードの整理とかしない方がいいわけですけど、
やっといたほうが、後々、楽なんですよね。

やはり、タブ化は、1ヶ月コースだったか。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月17日(金)

引き続き、ローカルブラウザのタブブラウザー化、その6

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

今日は、× ボタンもできたので、
細かいバグフィックスとかしてます。

例えば、ウェブブラウザーコントロールで
exel ファイルを開いたときに
IWebBrowser2::get_LocationURL が
about:blank を返すので、困ってます。

美しくない方法で対処するしかないだろうなぁ。

ローカルブラウザのダウンロードはこちら からどうぞ。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月16日(木)

引き続き、ローカルブラウザのタブブラウザー化、その5

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

今日はタブに × ボタンを表示するために、
タブの描画コードを書きはじめました。

タブのウィンドウスタイルに TCS_OWNERDRAWFIXED を指定すれば、
簡単にカスタマイズできるかと思いましたが、無理でした。

というのも、TCS_OWNERDRAWFIXED を指定すると
タブ全体が、古い見た目になっちゃうからです。
おそらく、互換性を保つためでしょう。

古い見た目はいやなので、結局
WM_PAINT をオーバーライドして
描画コードを全部自分で描くことに。

一応、基本的な見た目は再現できましたけど、
ホットトラックとか、フォーカスがある場合の
特殊な描画の実装がまだです。

まだ、標準的な描画をシミュレートする段階なので
× ボタンもまだですが、明日にはできるといいなぁ。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

WM_PAINT をオーバーライドしちゃったので、
見た目は、かなり自由にデザインできるんですけど、
まぁ、最初のバージョンは普通の見た目になるかな。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


2017年11月14日(火)

引き続き、ローカルブラウザのタブブラウザー化、その4

今日も、 ローカルブラウザ の修正中。

ローカルブラウザは、自分のパソコンに保存されている
HTML ファイルなどを、効率よく表示するためのソフトです。

インターネットエクスプローラーみたいなものですが、
ウィンドウズエクスプローラーと同様のフォルダーツリーが
あるので、ローカルに保存されているファイルを簡単に開けます。

↑ 開発中の画面。

一応、タブを閉じる機能もできて、
使えるようにはなってきましたが、
細かいところの修正がいろいろ必要です。

まず、HTML にタイトルがある場合、
タブにタイトルを表示するのですが、
長いタイトルだとタブ幅が長くなりすぎて
使いにくそう。いい感じのところで切って、
全文をツールチップで表示するなどの処理が必要でしょう。

また、今はタブを右クリックすると
表示されるメニューからタブを閉じる方式ですが、
やっぱり、× ボタンもあった方がいいんでしょうねぇ。

ま、公開まで、もうしばらくお待ちください。

ローカルブラウザのダウンロードはこちら からどうぞ。

・・・

今回は、ちょっとだけ罠にはまったので書いときます。

シングルモードのタブコントロールでは、
タブが増えて、表示しきれなくなると、
右端にスクロール用のスピンボタンが
表示されるのですが、動作しない罠です。

まぁ、普通に作れば、作動するのですが、
タブコントロールのスーパークラスで、
REFLECT_NOTIFICATIONS() すると
動作しなくなります。 (WTL の場合)

REFLECT_NOTIFICATIONS はメッセージハンドラ
実装用のコードで子ウィンドウからの通知メッセージを
(少し変更して) 子に送り返すコードを生成します。

結果、スクロール用のスピンボタンは (たぶん) 子ウィンドウなので、
通知メッセージがスピンボタンに返送されてしまう結果、
タブコントロールで処理されずに、動作しなくなる罠です。

ま、そりゃそうだろうけど、特に何も考えずに、
REFLECT_NOTIFICATIONS してあるもんだから、
少しはまったわ。なるほどなー。

ローカルブラウザ
ローカルブラウザのダウンロード
ローカルブラウザの更新履歴
ご意見・ご要望連絡窓口


<< | 2/16PAGES | >>