abwiki @ ウィキ (ActiveBasic非公式wiki)内検索 / 「ステータスバー」で検索した結果

検索 :
  • ステータスバー
    ステータスバーの中にプログレスバーを入れる。 プログレスバーをステータスバーの子にして、 SB_GETRECTでサイズ調整するのがミソ。 ↓プロジェクト名を"SPSP"にして、コモンコントロールを使用するにチェクを入れる。 '-----------------------------------------------------------------------------' イベント プロシージャ'-----------------------------------------------------------------------------' このファイルには、ウィンドウ [MainWnd] に関するイベントをコーディングします。' ウィンドウ ハンドル hMainW...
  • ステップ21 「ステータスバーを使う①」
    ステータスバーとはウィンドウアプリケーションでよく見かける左のようなものです。ちょっとした情報を表示するために使われるポピュラー機能ですね。 どーやって埋め込むの? イメージ画像では、ウィンドウにスッポリとはまっていますね。一見、スタティックコントロールのようにも見えますが、常にクライアント領域の端っこに表示されたり、分割表示できたりと、少し用途が違います。 具体的には、CreateStatusWindow関数を使用してステータスバーを生成し、表示するだけなので、作成方法はとてもシンプル。なにかしらアプリケーションを作るときには積極的に活用してしまいましょう(^^; CreateStatusWindow (style As Long, lpszText As BytePtr, hwndParent As DWord, wID As DWord) As DWord...
  • ステップ22 「ステータスバーを使う②」
    今回はステータスバーを複数のパーツに振り分け、日付、時刻、ウィンドウサイズを表示してみます。 どうやって振り分けるの? CreateStatusWindow関数を使ってステータスバーを生成したら、ステータスバーのハンドルに向けて、SB_SETPARTS メッセージを送ります。SB_SETPARTS メッセージのパラメータは以下の通り… wParamにはパーツ数を指定します。 lParamには、各パーツの長さ(ピクセルサイズ)が格納されたLong配列へのポインタを指定します。 また、各パーツへ文字列を設定するときには、SB_SETTEXT メッセージを使うわけですが、wParam部分にパーツ番号を指定する点をおさえておくと良いでしょう。 作ってみよう! ステップ21で作成したプログラムがある場合は上書き方式でプログラムを加工してみて下さい(変更点は...
  • ステップ23 「ステータスバーを使う③」
    ...。。 今回はステータスバーの各パーツにアイコンを表示してみます。少し細工を加えるだけで、ちょっとした機能も見栄えが良くなります☆ ※Comctl32.dllのバージョンが4.71以降であることが必要です ということで、上の画像にあるような三つのアイコン(16*16)をstateプロジェクトの中に用意しておきましょう。 icon1.ico(日付用)、icon2.ico(時刻用)、icon3.ico(サイズ用) ※右クリックで「対象をファイルに保存」 ステップ22でstateプロジェクトを作成されている方は今回のプログラムの太字の部分を参考にソースを編集してみて下さい。プロジェクトをこれから作る方は、ノーマルウィンドウベースで、プロジェクトオプションの「コモンコントロールを使う」にチェックを入れて作成しておきましょう。 まずはアイコンリソースを追...
  • Win32プログラミング講座 for AB4.24
    ... ステップ21 「ステータスバーを使う①」 ステップ22 「ステータスバーを使う②」 ステップ23 「ステータスバーを使う③」 ステップ24 「ツールバーを使う①」 ステップ25 「ツールバーを使う②(ボタンが浮き出すフラットツールバー)」 ステップ26 「ツールバーを使う③(ホットイメージ)」 ステップ27 「メモリ監視ツールを作る①」 ステップ28 「メモリ監視ツールを作る②(設定をレジストリに保存)」 ステップ29 「WAVEファイルを再生する」 ステップ30 「MCIコマンドで音楽ファイルを再生する」 ステップ31 「ツールバーを使う④(ツールチップを表示する)」 ステップ32 「アナログ時計を作る」
  • 応用
    ...う プログレスバー ステータスバー ウインドウの列挙 CPU使用率の取得と表示 GDIでお絵かき 壁紙チェンジャー スクリーンセーバーを作る必要性 メモリ上の機械語プログラム タイマー ラーメンタイマー デジタル時計 HDD温度を調べる メッセージフック レジストリをいじってみたい INIファイル コマンドライン引数 クリップボード マニフェスト埋め込み(XPスタイルへの変更) msvcrt メモリーをケチる 円を描く 印刷 プログレスバーの中に文字が表示できるやつ コンソールアプリ InputBoxを使う N88BASIC互換モードでドラッグドロップを受け付ける xmlを読み込む HTMLエディタの作成 エミュレータを作る(1) マルチメディア関連 ID3V1を取得 mp3プレーヤーを作ろう 可逆圧縮(猿音) gogo.sbp マルチメディア しゃべるプログラム サンプリングレ...
  • ステップ24 「ツールバーを使う①」
    ...て話を進めます。 ステータスバーに続き、今回のツールバーもアプリケーションの雰囲気や使い勝手を大幅に向上させることができるでしょう。 今回作成するプログラムのサンプルファイルを置いておきますので、参考にしたい方はどうぞ☆ Toolbar.zip(プロジェクトに必要なファイルがすべて入っています) ツールバーを生成するにはCreateToolbarEx関数を! このCreateToolbarEx関数、パラメータが多くて面倒ですが、難しい内容はありません。一つ一つ見ていきましょう。 CreateToolbarEx ( _ hWnd As DWord, _ 親ウィンドウのハンドル ws As DWord, _ ツールバーのウィンドウスタイル(WM_???) wID As DWor...
  • ステップ10 「プログレスバーとタイマー処理」
    型変換の警告が出るが公式の解説でOK プログレスバーとは、インストール画面などでよく見かけますね。処理の進行具合を示すメーターのようなものです。今回は、タイマー処理とプログレスバーを組み合わせ、カウントプログラムを作ってみます。 早速、新規プロジェクトを作るわけですが、注意点が1つ。プログレスバーはコモンコントロールの部類に入り、新規プロジェクト ダイアログの2つ目の画面(プロジェクト オプションが設定できるところ)で、「コモンコントロールを使用する(api_commctrl.sbp)」にチェックを入れておかなければなりません。その点を踏まえ、プロジェクトを作成してみましょう(プロジェクト名は "TimeCount" とします)。 ちなみに、プロジェクト オプションは、プロジェクト作成後、メニューの「表示」→「プロジェクト オプション」からも変...
  • プログレスバー
    RADなら貼りつければそれで終り。 自力ならクラス"msctls_progress32"で子ウインドウ作成。 ウインドウハンドルを取得してメッセージを送るだけ。 メッセージ wParam lparam 意味 PBM_SETRANGE32 最小 最大 範囲を指定 PBM_SETSTEP 増分 - PBM_STEPITの増分値 PBM_STEPIT - - PBM_SETSTEPの値だけ進める PBM_SETPOS 位置 - 現在位置を指定 PBM_GETPOS - - 現在位置を取得 例 ウインドウにボタンとプログレスバーを貼り、ボタンpush,ウインドウCreateイベントを書く。 Sub MainWnd_CommandButton1_Click()Dim i As LongDim hpg As HWNDhpg=GetDlgItem(hMai...
  • HTTPの初歩
    ちょっとABとは関係のないお話 [edit] HTTPについて † Hyper Text Transfer Protocolの略。Webブラウザとサーバがやりとりする際などに使われる通信プロトコル バージョンHTTP/1.0と1.1が存在する。ここでは一応1.1ベース ↑ [edit] 準備 † まずはソケットを使った通信を読んでsendとrecvを使えるようになって頂きたい ↑ [edit] 使い方 † 初めにsendでHTTPのリクエストを送信する。続いてrecvでサーバから返事を受け取る 以上 ↑ [edit] リクエストの基本構造 † <メソッド><HTTPバージョン>CRLF <ヘッダ>CRLF CRLF メソッドはGETとかHEADとかPUTとか。プログラムでいう所の関数名 ヘッダっていうのはメソッドの付加情報。...
  • プレイステーション
    1994年。ソニーが開発した32ビットゲーム機、それがプレイステーション。 プレステは、セガサターンと競合機種としてしのぎを削っていた。 FFとかの発売があり圧倒的なシェアを獲得。 後継機のPS2は互換性を持っていて、 めっちゃ売れた。
  • 命令
    命令とはコンピュータに決まった処理をさせる魔法の言葉。 コマンドとも呼ばれる。 昔のBASICのコマンド F1 load " F2 auto F3 go to F4 list F5 run[cr] F6 save " F7 key F8 print F9 edit F10 cont[cr] Windowsのコマンド F1 ヘルプ F2 名前の変更 F3 ファイルやフォルダの検索 F4 アドレスバーの表示 F5 更新 F6 項目の切り替え F7 全角カナ F8 半角カナ F9 全角英数 F10 半角英数字 F11 全画面表示 F12 ?
  • データベースとは?
    データベースとは? データベースとは、コンピュータ上にて情報を格納して手早く適切に情報を検索、編集する 仕組みを持つシステム装置をいう。 データベースというもの自体は昔から存在していて別段、驚くものではない。 例えば、図書館における図書と蔵書検索などは、コンピュータが存在しない時代では、紙の カードによって管理されている。 貸し出しされた書籍の管理も、紙媒体のカードで行っていた。 具体的には、書籍検索の場合、蔵書目録はすべてカード化されていて、索引のインデクスは 適切にソートされ、昇順に並んでいる。 利用者は、カードが保存されたデッキからカードを探すため、題名や著者名から読みたい本を 検索する。 カードには棚のナンバーが記載されていて、利用者は検索後、読みたい本のカード内容から、 一意なユニークなIDナンバーを読み取り、ID札が置かれた本棚を検索して棚...
  • Gotoによる最適化;分岐予測およびキャッシュヒット率の向上
    昨今CPUではますます分岐予測やキャッシュヒット率の向上が、大きな要素を占めている。 分岐予測 キャッシュメモリ Gotoはうまく使うことで、ループや分岐のの単純化出来る場合がある。 処理の大半はループ(とそれに絡む分岐)なので、Gotoは積極的につかうべきである。 キャッシュコンシステンシイ プロセッサのキャッシュメモリに入るコードか、そうでないコードでのレイテンシの問題のこと。 もし、ループ構文の中でロングジャンプが発生していた場合、キャッシュメモリの範囲を 超えたアドレスに頻繁にジャンプする事になる。 この振る舞いは、命令キャッシュの範囲を超えているので、命令キャッシュのコンシステンシイ に問題が生じキャッシュレイテンシに差が生じる。 一例としてはCore2マイクロアーキテクチャでは、一次命令キャッシュ内に収まるような小さな ジャ...
  • ステップ27 「メモリ監視ツールを作る①」
    公式のものは4.24でもコンパイル可能であるが、メモリが4GBとかだと値がおかしくなるし、新しいOSにも対応していないので 次のように修正が必要。 ' ----------------------------------------------------------------------------' イベント プロシージャ' ----------------------------------------------------------------------------' このファイルには、ウィンドウ [MainWnd] に関するイベントをコーディングします。' ウィンドウ ハンドル hMainWnd' メモ - 以下の領域を、変数、構造体、定数、関数を宣言するための、' グローバル領...
  • プログレスバーの中に文字が表示できるやつ
    Class HIRAI_PROGRESSPrivatehWnd As HWNDhDC As HDChMDC As HDChBmp As HBITMAPrcc As RECThPen As HPENhBrs As HBRUSHmax As Longmin As Longcur As Longspo As LongPublicSub ~HIRAI_PROGRESS()DeleteObject(hBrs)DeleteObject(hPen)DeleteObject(hBmp)DeleteDC(hMDC)ReleaseDC(hWnd, hDC)End SubSub Set(hWnd2 As HWND)hWnd = hWnd2GetClientRect(hWnd, rcc)hDC = GetDC(hWnd)hMDC = CreateCompatibleDC(hDC)hBmp = CreateComp...
  • 宣言と定義
    宣言と定義 ABのヘルプではDim宣言と書いてあるし、 Dim ステートメントの項では 変数を定義し、変数データに必要な領域を確保します。 と書いてある。なんのこっちゃ。 まともな言語であればこれらは通常区別される。 宣言 そのオブジェクトを使いますよとコンパイラに知らせるだけ 定義 実際にそのオブジェクトがメモリに割り当てられる 宣言と定義の違いは微小にして多大である。 宣言は同じものが幾つあっても問題ないが定義は1つだけしか出来ない。
  • Class~End Class
    名称 |Class~End Class 読み |くらす~えんどくらす 文法 |Class ClassName [Inherits BaseClass] [Private] [statement] プライベート メンバ ステートメント Public [statement] パブリック メンバ ステートメント Protected [statement] プロテクティット メンバ ステートメント End Class 説明 |クラス名及びクラスを構成するメンバ変数、メンバ関数を定義します。
  • ステップ28 「メモリ監視ツールを作る②(設定をレジストリに保存)」
    前回と同じ修正が必要。 またこのサンプルを実行するとレギストリに永遠に値が残るのでこれは重大な問題だと癒える。 前回に引き続き、メモリ監視ツールに、オプション項目を付け足してみます。 今回作成するプログラムのサンプルファイルを置いておきますので、参考にしたい方はどうぞ☆ SystemWatcher2.zip(プロジェクトに必要なファイルがすべて入っています) オプション項目って何をするの? 更新間隔の設定 最前面表示のオン/オフ 今回は、上記の2点と、それら設定項目のレジストリへの保存を試みます。 レジストリ操作 ① RegOpenKeyEx関数でレジストリキーをオープン ② RegQueryValueEx関数で値を読み込む / RegSetValueEx関数で値をセットする ③ RegCloseKey関数でレジストリキーを閉じる ...
  • マルチタスク
    複数のタスクを並列動作すること。 マルチスレッド、マルチプロセスに対してより高位の概念。
  • スレッド
    掲示板におけるスレッド スレッドとは。掲示板の構成要素のこと。トピックとも言われる。 スレッドは掲示板に特定のテーマを持つ小さな掲示板のようなものである。 扱う話題が多岐に渡る場合や人数の多い大きな掲示板では、話題が散漫になりがちで、議論が進行しなくなることがなくもない。 コンピュータにおけるスレッド スレッドとは、軽量プロセスと呼ばれる実行の主体。 スレッドとプロセスとマルチタスク WindowsなどのOSは、一つのCPUであっても同時に複数のソフトウエアが動作するように設計されている。 単一のCPUでも複数のソフトウエアを同時に利用可能なOSをマルチタスクOSと呼ぶ。 現在、一般的となったパーソナルコンピュータ用OSはマルチタスクOSである。 プログラムが実行される時、必ず一つのプロセスとしてコンピュータ上で実行される。OSからは 一つ...
  • テーマ
    テーマとは。 主題ともいい楽曲の構成要素となるメロディーのこと。ポップスではサビと言われる。 主題を元にその場で作る楽曲を即興曲といい、ショパーンの幻想即興曲、フランツのop.90-3などが有名。 ベートーベン先生は、モーツァルトに弟子入りを志願したが、あまりいい返事を貰えそうになかった。 先生はモーツァルトに「なにかテーマをください。即興で演奏します」といい、即興曲を演奏。 先生はモーツァルトに認められた。
  • ステップ25 「ツールバーを使う②(ボタンが浮き出すフラットツールバー)」
    こんな風に、マウスポインタを合わせるとボタンが浮き出てくるツールバーのことを、フラットツールバーと言います。今回は前回の標準ツールバーのプログラムにちょっと手を加え、オシャレなフラットツールバーにしてみましょう。 今回作成するプログラムのサンプルファイルを置いておきますので、参考にしたい方はどうぞ☆ Toolbar2.zip(プロジェクトに必要なファイルがすべて入っています) どこに手を加えるかというと… ツールバーのウィンドウスタイルに TBSTYLE_FLAT を加えるだけです。 えー、めっちゃ簡単じゃん。それではCreateToolbarEx関数の第1パラメータを… ちょっとお待ちください。実験してみると分かりますが、ツールバー生成時にダイレクトに TBSTYLE_FLAT を指定してしまうと、不思議なことにツールバーの背面が白になってしまいます。 と...
  • ステップ26 「ツールバーを使う③(ホットイメージ)」
    フラットツールバーにホットイメージ機能を付け加えます。ホットイメージとは、1つのボタンに対し、通常画像と浮き上がったときの画像を持たせる機能のことです。今回は、フルカラーのボタンイメージを採用するので、なかなかの見栄えになるかと思います。 今回作成するプログラムのサンプルファイルを置いておきますので、参考にしたい方はどうぞ☆ Toolbar3.zip(プロジェクトに必要なファイルがすべて入っています) 前回(ステップ25)のソースプログラムに変更を加える形で作業を進めていきます。前回からの変更箇所を太字で示しています。新規にプロジェクトを作成させる方は、プロジェクトオプションで「コモンコントロールを使用する」にチェックを入れておくのを忘れないようにしましょう。 チェックしておきたい関数は? コモンコントロールのイメージリスト機能を使用するため、Imag...
  • VB
    VB(Microsoft Visual Basic) Microsoft社が開発したBASIC言語でWindows環境での動作に適した拡張を行った BASIC処理系。 歴史 Microsoft社が開発した初期のMicrosoftBASICを拡張し、構造化構文と構造体など 変数型の改良、インタプリタ+コンパイラの対応を経てQuickBASICが開発された。 この時点で言語処理系として他の処理系と比べて引けを取らない拡張が行われ 旧式のMicrosoftBASICと比べて先進的な機能が実装された。 QBasicはコマンドCUIで行番号編集のエディタからフルスクリーンエディタ を含む統合開発環境とデバッカを新たに備えたインタプリタで コンパイラ機能を取り除いた簡易的なQuickBASICと呼べるもので、 英語版MSDOSやWindows95CDROMな...
  • 32ビット
    32ビットとは、 セガサターンやプレイステーションといった次世代機のCPUのビット数のこと。 一度の計算で0-2^32までの大きさを扱うことができ、 もし16ビットの値だったら1回で2回分の計算ができるってこと。 64ビットCPUをもったIA64とかN64とかあるけど、 今のところ32ビットがやや優勢。 AB作者の山本さんは64ビットへの関心が強かったらしい。 開発者として新しい機能、とかは挑戦したいものだろう しかしABユーザーが使いこなせるわけなかった。
  • ステップ11 「テキスト エディタを作る」
    Sub MainWnd_IDM_OPEN_MenuClick()の Dim buffer As StringをDim buffer As *Byteに、 buffer=ZeroString(dwFileSize)をbuffer=malloc(dwFileSize)に それぞれ変更。 今回は、必要最小限の機能がついたテキスト エディタを製作します。 必要最小限の機能ってどんなものがあるの? 開く、保存 だけです(キッパリ)。しかし、これではさすがに寂しすぎるので、コピー&ペーストなどの編集メニューまでをこのページで解説することにします。 さっそく作ろう! ノーマル ウィンドウ ベースのプロジェクト(プロジェクト名を "TextEditor" とします)を作成し、メニューの作成(IDは "MainMenu")...
  • データ
    データとは客観的な値のこと。 例えば今日の天気とか、気温が57℃とか。 これに各々が恣意的な感情を加えたものを情報という。 例えば今日の天気は晴れ(データ)なので、日傘が必要です(情報)
  • ステップ7 「メニュー コントロールを使う②」
    回は「終了」ボタンだけという非常にシンプルなメニューでしたが、今回は、ポップアップを取り入れ、複数の項目を持つメニューを作成してみます。 前回同様、ノーマル ウィンドウ ベースのプロジェクト(プロジェクト名を "MenuTest2" とします)を作成し、メニューの作成(IDは "MainMenu")、メインウィンドウへのメニューの貼り付けを行ってみて下さい。やり方をもう一度確認したいよ、という方は、前回「ステップ6」のページをご確認下さい。 それでは、"MainMenu" を開き、メニュー項目を追加していきましょう。まずは「挿入」ボタンをクリックし、1つ目の項目を挿入します。以後、メニューを挿入するときは、挿入したい場所の1つ上の項目を選択した状態で「挿入」ボタンをクリックするようにすることを覚えておくと便利です...
  • ラーメンタイマー
    プロジェクトエディターで簡単なラーメンタイマーを作ってみつ。 タイマー処理とGDIを使っている。 プロジェクト HiraiRamenTimar コモンコントロールを使用するにチェックを入れる。 次のコントロールを貼り付ける。 エディットボックス ID=EditBox1 ボタン ID=CommandButton1 プログレスバー ID=ProgressBar1 '-----------------------------------------------------------------------------' イベント プロシージャ'-----------------------------------------------------------------------------' このファイルには、ウィンドウ [...
  • ステップ31 「ツールバーを使う④(ツールチップを表示する)」
    ステップ26 「ツールバーを使う③(ホットイメージ)」の続きです。ホットイメージツールバーにツールチップを表示してみます。 今回作成するプログラムのサンプルファイルを置いておきますので、参考にしたい方はどうぞ☆ Toolbar4.zip(プロジェクトに必要なファイルがすべて入っています) ツールチップの表示方法 WM_NOTIFYメッセージを感知し、ツールチップ用の文字列をセットするだけという、非常に簡単な流れになります。具体的には、以下のような流れになります。 ① WM_NOTIFYメッセージがメッセージコードTTN_NEEDTEXTとともに送られる ② TOOLTIPTEXT構造体のlpszTextメンバに文字列を示すポインタをセットする Type TOOLTIPTEXT hdr As NMHDR NMHDR構造体にコマンド情報...
  • クラウド
    クラウド・ストライフ (Cloud Strife) とはファイナルファンタジー(FF)7の主人公。 プロフィール 年齢:21歳(『ファイナルファンタジーVII』での年齢) 誕生日:8月11日 血液型:AB型 身長:173cm 出身地:ニブルヘイム (wikipediaより引用) あまり他人に心を開かず「興味ないね」などが口癖のクールな性格。 戦闘能力が高くなんでも屋をやっている。 世界を牛耳っている「新羅カンパニー」には私設軍隊があり、 その中で最もすぐれた「ソルジャー1st」に在籍していたセフィロスにあこがれ自身もその中にいたという。 ストーリーが進むと、クラウドも、自身の弱さや仲間の大切さを知るようになり、世界をかけた戦いに身を投じていく。 ストーリもスーパーファミコン(SFC)のころと比べ対象年齢を上に設定しており、成人ユーザーを引き寄せる...
  • メンバー
    構造体に含まれるものの名前。 Type A i As Long End Type このときのiがメンバ変数と呼ばれる。 クラスにおけるメソッドもメンバーとか言われる。 ハンガリアン厨はm_〇〇といった命名を使うことがある。
  • コンピュータ
    電子計算機とも呼ばれる。 データを入手力したり、それを演算したり、保存もできる偉い子。 文句もあまり言わないが、たまに不機嫌になる。 人間と違って怒ったときは真っ青になることもある。 コンピュータを意のままに操る人をプログラマ、 そうでない人をインプッターという。
  • ステップ1 「変数の扱いと演算子」
    公式の説明でok 「変数」とは、データを記憶するためのメモリの一部分やと考えておくんなはれ。変数にはいくつかの種類があり、整数を記憶できるもん、小数部分の数値も記憶できるもん、文字列を記憶できるもんやらなんやらが存在しまっせ。 変数を利用する前にはじぇったい、「変数の定義」をせなあかんなりまへん。例えば、 Dim a As Long この一行は、「"a" ちう名前のLong型変数を利用します」ちう意味を持ち、この次の行から変数aを利用するっちうことができるようになるんですわ。Long型とは、整数を扱うための変数型のことや。こないな風に、変数の定義を行う場合は、Dim命令語を利用するもんやいうことを覚えておきまひょ。 早速、Dim命令語で変数宣言を行い、値を代入してみまひょ。 Dim a As Long a=20 Messag...
  • BASIC
    BASIC(べいしっっく) 我が国では最もポピュラーとされていたホビー用プログラミング言語。 Beginner s All purpose Symbolic Instruction Code (初心者のためのすべて目的シンボリック命令コード) の略で、BASICの文字はすべて大文字で書く。 プログラミング初学者でも挫折しないように配慮されており、 FORTRANの子分として登場した。 1964年、米国ダートマス大学にてタイムシェアリングシステム"DTSS"(多人数が一台のマシンを 共有するもので、今で言うクラウド) 上の言語としてALGOLともう一つのユーザー言語として利用されるよう 設計されていた。 その後、マイクロコンピュータの発明によりパーソナルコンピュータが自作され、BASIC言語の移植が 盛んに行われるように...
  • Apple
    アップルとは、コンピューターやそれに関連するソフトを開発する世界的な会社。 一番偉い人はジョブスさん。 日本ではNECという会社がPC88シリーズを発売し、国内で圧倒的なシェアを獲得していた1980年代。 アップルはAppleIIというコンピュータで牙城を崩そうと奮戦した。 1990年代前半のNECのPC98時代にはMacintoshが軌道に乗り、 NECが死滅したWinows95以降のMS偏重時代にも一定のシェアを維持をした。 2001年WindowsがXPを発表。アップルは新しいUnixベースのMac OS Xを発表、これに対向した。 このことは、Unixが世界を支配したことを意味している。(WindowsNT系はPOSIX準拠) アップルは携帯音楽プレイヤーiPodの成功を皮切りに、iPhone,ipadとモバイル機器にも力を入れており、 とくにi...
  • オーバーロード
    オーバーロード(overload)とは、関数、メソッド、クラスの演算子の多重定義のこと。 オーバーライド(override)とは違うので注意されたし。 同じ関数名で引数の形が違うもののこと。 呼び出したときは型の近いものが呼ばれる
  • ステップ9 「ビットマップビューワを作る」
    今回は、メニューコントロールや「ファイルを開く」ダイアログボックス、ビットマップ用のAPI関数を活用し、ビットマップビューワの作成にチャレンジしてみます。 プロジェクトの作成 ノーマル ウィンドウ ベースのプロジェクト(プロジェクト名を "BmpViewer" とします)を作成し、メニューの作成(IDは "MainMenu")、メインウィンドウへのメニューの貼り付けを行っておきましょう。 "MainWnd" のプロパティ設定 まずは、ベースとなる "MainWnd" を開き、ウィンドウ プロパティの設定を行います。 背景色のボタンをクリックし、"NULL" に設定しておきます。 メニューを "なし" から "MainMenu&qu...
  • ポインタ
    ポインタとはメモリアクセスの手段。 主に文字列操作、参照渡しもどき、関数呼び出しのオーバーヘッド削減、 関数テーブル、メモリの動的確保 などに使うのが一般的。 Dim pp As *Byte これでppはByte型データを指すポインタができる。 同じように Dim pp As *Long でLong型を指すポインタが宣言できる。 特性 ポインタはメモリアドレスを保持するのと、指した先の値を取り出すことができる。 Dim h[100] As Byte Dim ppp As *Byte ppp = h これでpppはhの先頭アドレスを指している。 ppp[0]とかppp[2]とか添字を付けることで、指した先ppp[0]ならh[0]の、ppp[2]ならh[2]の値を取り出すことができる。 また、ppp[2]=5とか、代入もできる。 参照渡しもどき...
  • データー圧縮
    データー圧縮 Function Encode(src As *Byte, srclen As DWord, dst As *Byte) As DWord Dim i As DWord, j As DWord, k As DWord While i srclen dst[j] = src[i] k = 0 While src[i] = dst[j] If k = 255 Or i srclen Then Exit While k=k+1 i=i+1 Wend j=j+1 dst[j] = k j=j+1 Wend Encode = j End Function Function Decode(src As *Byte, srclen As DWord, dst As *Byte) As DWord Dim i As DWord, j As DWord, k As DWo...
  • サンプリングレートコンバータ
    デターが50,40,60,20,0ならそれぞれの間に左右の平均を入れる。 50,45,40,50,60,40,20,10,0
  • ステップ20 「プロセス デバッガによるデバッグに挑戦」
    プログラミングはしてみたけど、いざ実行すると強制終了してしまう。なんでぇ~( _ ) この変数の値がちゃんとしてるか、MessageBoxでいちいちチェックするのって面倒… そこのあなた、こんなお悩み抱えていませんか?こんなときに登場するのが「プロセス デバッガ」。デバッグのやり方さえ覚えてしまえば、これらの問題はスマートに解決できます。 そもそも、デバッグって何? 「デバッグ」=「バグを取り除く」などという意味を持ちますが、一般的に、作ったプログラムに不具合はないかを、コードを一つ一つチェックしながら実行したり、任意のタイミングで変数の内容を表示しながら実行するといったことをしてチェックします。 論より証拠、実際にデバッギングを体験してみましょう。 まずは誰が見てもおかしいことに気付くプログラムをリリース コンパイル(F7キー)し、実行してみます。 Dim i...
  • マルチコア
    コアが複数あること。 コンプータでコアはCPUのこと。 CPUが複数あると、並列処置が得意になる。 シングルコアに対する利点として、 Windowsはマルチタスク(アプリがいっぱい動く)のでマルチコアはコアあたりの使用率を下げることができる。 発熱を下げたり消費電力を下げられるメリットもある。 ABではマルチコアを使う方法としてWin32APIで書くしかない。 ライブラリなんてものは無い。
  • システム
    トントカイモ
  • ステップ4 「RADツールに初挑戦」
    (Verによって画面がやや異なる。) 今まではMessageBox関数のみを使用した素朴な画面出力やったが、ここで本格的なGUIプログラムの開発に挑戦してみまひょ。「いろんな種類のウィンドウを、関数やらをいくつも使って生成するやつでしょ?」なんてゆう方、お絵かき感覚のウィンドウ デザインを是非、お試しおくんなはれちゅーワケや。 プロジェクトを生成してみまひょ RADツールを利用するためには、ノーマルウィンドウをベースにしたプロジェクトを作成する必要がおます。作り方は至って簡単、新規作成でプロジェクトを選択し、後は画面の指示に従って設定を施すだけや。 さっそく、プロジェクトの作成をしてみまひょ。 初めに、新規作成でプロジェクトを選択し、OKボタンをクリックしまんねん。 次に、プロジェクト名、保存先のディレクトリを設定しまんねん。プロジェクト名は...
  • RunBASICの使い方
    RunBASICはサーバーサイドのBASIC。基本はcgiと同じ。perlやphpをwebサーバに置いて、 ブラウザ側から動的にwebページを表示可能。 従来のBASIC言語としても利用できるし、Webアプリケーション作成も可能。携帯などからも 利用出来る。 cgiと異なる点は、BASICインタプリタとWebサーバがオールインワンで含まれ、動作させる BASICコードをブラウザ上で編集できる事。通常はperlやphpのソースコードをftpでサーバへ 転送するが、その必要が無い。 その場でwebアプリケーションとして動作させ、編集画面から直接実行することができる。 さらに、記述はBASICとhtmlを使用し、html記述言語として利用可。BASICコードを使って htmlのマクロ的記述が可能。どちらかというとphpに近い。 RailsとかFrameworkより驚くほ...
  • 決定論、非決定論性
    決定論、非決定論ちう表現は、しばしば哲学や科学的宗教的側面で語られるが、 コンピュータプログラムにおける決定論とは、プログラムコード実行時における、 その動作や振る舞いにあいまいな点が無く、記述されたコード内容から振る舞いが予測でき、 何度実行しても同じ結果を返すコードの事を言うんや。 これに対し非決定論的なプログラムコードとは、プログラムコード実行時までその動作や 振る舞いが不明である様子を指し、具体的な例としては、入力データを要求するがデータが不定な プログラム、またはコンピュータゲームにおける人間のコントローラ操作による 未知の要素が含まれる場合が該当するちうわけや。 厳密には異なるが理解しやすい例としては、バグが内在するフィルタプログラムに対し、 前提としていっぺんも実行またはデバックされておらへんちう条件下で、未知のデータを入力する 状況では、プロ...
  • スクロールバーコントロールを使う
    Win32アプリケーションを新規作成。コモンダイアログを使うをちぇっく 垂直スクロールバーをウインドウに貼る。 すたてっくテキストを貼る。 SCROLLINFO構造体をグローバル領域に定義(MainWnd.sbp内)する。 ' TODO この位置にグローバルな変数、構造体、定数、関数を定義します。Dim scr As SCROLLINFO メインウインドウのイベントハンドらから、Createを記述。SCROLLINFO構造体を 指定してスクロールバーのプロパティを設定。 Sub MainWnd_Create(ByRef CreateStruct As CREATESTRUCT)Dim hscr As HWNDhscr=GetDlgItem(hMainWnd,VScrollBar1)scr.cbSize=SizeOf(SCROLLINFO)scr.fMa...
  • プラグイン/ニュース
    ニュース @wikiのwikiモードでは #news(興味のある単語) と入力することで、あるキーワードに関連するニュース一覧を表示することができます 詳しくはこちらをご覧ください。 =>http //atwiki.jp/guide/17_174_ja.html たとえば、#news(wiki)と入力すると以下のように表示されます。 ウィキペディアを作ったiMacが箱付きで競売に登場。予想落札価格は約96万円!(ギズモード・ジャパン) - Yahoo!ニュース - Yahoo!ニュース メトロイド ドレッド攻略Wiki - Gamerch(ゲーマチ) ツムツム攻略Wiki|ゲームエイト - Game8[ゲームエイト] 【グランサガ】リセマラ当たりランキング - グランサガ攻略wiki - Gamerch(ゲーマチ) アイプラ攻略Wiki|アイドリー...
  • @wiki全体から「ステータスバー」で調べる

更新順にページ一覧表示 | 作成順にページ一覧表示 | ページ名順にページ一覧表示 | wiki内検索