• ベストアンサー

VC++で困ってます・・・。

VC++で、ビットマットフォーマットをする。課題がでました。 課題は、ピクチャーボックスにbmpファイルを表示して、表示したbmpからボタンを使って、ラベルや、テキストボックスに、そのbmpのバイト数や、画像に関する、情報を表示する課題です。 今は、ピクチャーボックスから画像を出すことはできたんですが、その後にどうやって画像に関する色のバイト数や、情報を表示するかわかりません。 どこを、いじってプログラムを作っていくかもわからない状況です。 初心者なんで、プログラムの例や、ビットマップファイルに使うプログラムとかいろいろ教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.1

★アドバイス ・次のリンクを参考にして下さい。  http://www.ruche-home.net/?%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%2FBMP%A5%D5%A5%A1%A5%A4%A5%EB%BB%C5%CD%CD%2F%A5%D0%A5%A4%A5%CA%A5%EA%B9%BD%C2%A4  http://www.umekkii.jp/data/computer/file_format/bitmap.cgi  ここにBMPファイルのバイナリ構造が解説されています。  これを元にデータを取り出して表示すれば良いでしょう。 ・サンプルページは  http://eternalwindows.jp/graphics/bitmap/bitmap18.html  http://hp.vector.co.jp/authors/VA023539/tips/bitmap/002.htm  などをどうぞ。

maru_min
質問者

お礼

いろんなサイト教えてくれてありがとうございます。

関連するQ&A

  • VC++のマネージ形式での課題で・・・。

    VC++で、ビットマットフォーマットをマネージ形式でをする。課題がでました。 課題は、ピクチャーボックスにbmpファイルを表示して、表示したbmpからボタンを使って、ラベルや、テキストボックスに、そのbmpのバイト数や、画像に関する、情報を表示する課題です。 今は、ピクチャーボックスから画像を出すことはできたんですが、その後にどうやって画像に関する色のバイト数や、情報をマネージ形式で表示するかわかりません。 プログラムつくってもエラーばっかでわかりません。 例として、ボタン1をクリックして、ボタン1でラベルにbmpのバイト数を出したいんですがエラーします。 プログラム例は、  botton1 click ・・・ { bitmap^bmp; bmp = Bitmap("bmpのファイル名"); label1->Text = bmp; }   これで、ずっとエラーします。誰か適切なアドバイスください。いろいろサイトみてもMFC形式のやりかたばかりでわかりません。 マネージ形式でのやり方を教えてください。

  • 【VC++6.0 MFC】画像表示について

    お世話になっております。C++初心者です。 とある開発でVC++6.0のMFCを利用して画像表示を行う作業をしています。 リソースファイルを使用せず、 外部の画像ファイルを読み込みピクチャーボックスに表示しなければならないのですが、 下記の関数を呼び、BMPファイルを読み込み、 NULLの場合はエラーメッセージを表示するようにしているのですが、 必ずNULLが返ってきてしまいます。 何が問題なのかもわからず苦戦しております。 知識不足で申し訳ないのですが、お願いします。 【疑問点】 ・画像ファイルの指定は絶対パス?相対パス? ***問題の箇所*** HBITMAP hBmp; // ビットマップハンドル // ビットマップのハンドル取得 hBmp = (HBITMAP)::LoadImage(AfxGetInstanceHandle(),"1.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE); // ハンドルのチェック if(hBmp == NULL) {   AfxMessageBox("読み込みに失敗しました");   return ; }

  • VC++でマウスホイールイベントを使いたいのですが

    VC++2010のフォームアプリケーションについての質問です。 フォームに設置したピクチャーボックス上でマウスホイールをすることで、ピクチャーボックスに表示されている画像(BMP)を拡大・縮小できるようにしたいのですが… 色々と試しているのですが、 ・マウスホイールのイベントが反映されない ・拡大縮小のやり方がわからない です。 どなたかご教授頂けると幸いです。

  • VC++のダイアログボックスに絵を描くには?

    VC++初心者なんですが、画像処理関係のプログラムをVC++で作っています。で、子ウィンドウに表示されている画像のRGBそれぞれのヒストグラムをダイアログボックスに表示したいのですが、ダイアログボックスに絵(グラフ)を描く方法がわかりません。どういう手順でやればいいですか?エディットボックスにGDIとかで絵を描くことは可能なんですか?またはピクチャーボックスですか?

  • 【VC++2005】複数ビットマップの表示方法

    【VC++2005】複数ビットマップの表示方法 BMPファイルを読み込み、ピクチャーコントロールに表示する方法を以下を参考に作成しました。 →http://www-higashi.ist.osaka-u.ac.jp/~k-maeda/vcpp/sec4-1bmpfile.html そこから今度は、複数のBMPを読み込み、画面に連結して表示させたいと思いましたが、どのように行えば実現可能なのか検討もつきません・・・。 参考になりそうなサイト等、ご存知の方がおられましたらご教授お願いいたしますm(__)m

  • vc++にて、画像の色の情報表示プロパティをおしえてください。

    vc++のマネージ形式で,bmpやjpgの画像からこの画像は、4byte、あの画像は24byteとの色情報が使われてるとか色情報をbuttonを押してlabelに表示したいのですがどのプロパティを使えばいいかわかりません。MSDNでも探しましたけどわかりませんでした。初心者なので適切に教えてくれたらうれしいです。

  • VC++ 6.0 でJPEGをBMPに変換したい…

    VC++ 6.0を用いて画像処理のプログラミングをしています。 プログラムでJPEGを読み込んで、BMPに変換して画像処理をした後、JPEGもしくはBMP、どちらでも保存できるようにできればいいと思い、Webをいろいろ探してみたところ、IJGのjpeg-6bというものを見つけました。これをコンパイルして、libjpeg.libほか、多数の実行ファイルにすることができたのですが、ここからVC++ 6.0で使う方法がまったくわかりません。そもそもライブラリとは何なのか分かっていません。VC++を始めて数ヶ月ですので具体的に教えてください。また、もっといい方法があればそちらの方も教えてください。

  • VC++6.0,MDI,子ウィンドウのタイトルが変わる!?

    VC++6.0でMDIプログラムを作成しているものです. 子ウィンドウをダブルクリックすると「ファイルを開く」のコモンダイアログを呼び出し,そこに選択した画像ファイルを表示させるプログラムを作ったのですが,ついでにタイトルバーに開いたファイル名を以下のようにして表示させました. // Viewクラスにて CFileDialog dlg(TRUE, "bmp", "*.bmp",               OFN_HIDEREADONLY|         OFN_OVERWRITEPROMPT,        "BITMAP(*.bmp)|         *.bmp|JPEG(*.jpg)|         *.jpg||"); if (dlg.DoModal() != IDOK) { return; } GetParent()->SetWindowText(dlg.GetFileName()); そして,画像を表示したウィンドウとは別のウィンドウをアクティブにすると,タイトルバーに表示したファイル名がウィンドウを生成したときのタイトルに戻ってしまいます. 子ウィンドウが何個あっても,表示している画像のファイル名をタイトルバーに表示したいのですが,どうすればいいのですか?

  • VB6.0 ピクチャーボックスに関連したファイルの移動

    PCにあるファイルをピクチャーボックスにいれ、それを画像形式(ビットマップ)に加工してサーバにアップロードするというプログラムをVB6.0で作りたいのですが、どういった風に作ればいいでしょうか。   簡単なプログラム例があればぜひ教えていただきたいです。またこれを組み合わせればいいなんてのもあったら教えてください。 使い始めたばかりであまりよくわかりません。よろしくお願いします。

  • アイコンをピクチャーボックスに表示したい・・

    かなり難しいとは思っていますが アイコンをBMP形式でリソースに取り込んであります。 ピクチャーボックスに表示させるには、どうすればいいでしょうか・・・ できればプログラムソースファイルもおねがいします・・

専門家に質問してみよう