• 締切済み

ボタンコントロールの形を変えたい

Windows XP SP2 上の Visual Basic 2005 で Windows アプリケーションを開発をしています。 あらかじめ用意した画像をボタンコントロールに貼り付けて、 その画像の形に合わせて、ボタンコントロールの形を 変える方法について調べています。 できれば、デザイナ上でそういったことをする方法があればよいのですが・・・どなたかご存知の方いらっしゃいませんでしょうか。 ピクチャーボックスをボタンにしても構いませんが、できるだけコーディング量を減らしたいと考えています。

  • Xingb
  • お礼率66% (2/3)

みんなの回答

  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.1

デザイナ上ではありませんが、参考になさってみてはどうでしょうか? http://dobon.net/vb/dotnet/form/formregion.html

関連するQ&A

  • Windows フォームアプリのコントロールの名前

    Visual C++ で Windows フォームアプリケーションを作成しています。 画像のようなコントロールを使いたいと思い,ツールボックスを探したのですが,見当たりません。 画像のコントロールの名前を教えてください。

  • ボタンクリックでタブ内のピクチャコントロールに画像描画

    呼び出し元ダイアログ(A)と コンボボックスのあるダイアログ(B) そしてタブの中に入るダイアログ(C)があります。 それぞれのダイアログ内にあるものは以下のとおり A→ボタン1(IDC_BUTTON1)…Bを呼び出すためのもの   ボタン2(IDC_BUTTON2)…画像を呼び出すためのもの   タブ(IDC_TAB1)…Cが入るもの B→コンボボックス(IDC_COMBO1)…画像を選択するもの   ↓   dataは「picture1;picture2」   OK/CANCELボタン…略 C→ピクチャボックス(IDC_PICT1)…画像を表示させるためのもの プログラムでAのタブの中にCを入れるところを完成しました。 次に以下のようなことをやりたいのですが、どのように処理をしたらいいのかわかりません。 ボタン1を押す→Bが呼び出される→コンボボックスで画像を選択→ボタン2を押す→タブ内のピクチャボックスにコンボボックスで指定した画像が表示される。 というようにしたいです。 1つのダイアログ上で画像をピクチャボックスに表示するものはやったことがありますが、ダイアログを挟んでの表示はやったことがないためここ2日悩んでいます。 下手な説明かとは思いますがご教授の程よろしくお願いいたします。 ※コンボボックス変数→CComboBox m_combo; ピクチャボックス変数→CStatic m_picture;

  • ダイアログボックスについて。

    ダイアログボックスについての質問です。 開発環境はVisual C++ 2005.netでありSDKを利用しています。 ダイアログボックスにPicture Controlを貼り付け、Combo Boxの内容が変わるたびにそのPicture Controlに画像を表示するようなプログラムを作りたいと考えています。 自分が考える手順としてはまずPicture Controlについてサブクラス化を行い、親のダイアログボックスが表示されると同時にPicture ControlのプロシージャでWM_CREATEメッセージを受け取り描画を行う。 そして親のダイアログボックスに貼り付けたCombo Boxの内容が変更された場合に、Picture ControlのウィンドウハンドルにむけてWM_PAINTメッセージを送信する。 こんな手順で行いたいのですが、少し不安な部分が出てきました。 Combo Boxの内容が変更され、Picture Controlのウィンドウハンドルに向けてWM_PAINTメッセージを送信し、Picture ControlプロシージャではWM_PAINTメッセージがきたとき画像の描画を行う場合、このプロシージャではどの画像を描画してよいか不明です。 そのため何番の画像の表示命令が来たのかを示すために、親のダイアログボックスに貼り付けたCombo Boxが変更された場合、Picture Controlに向けてWM_PAINTメッセージと表示画像番号をパラメータとして送信したいのです。 もちろんグローバル変数を用意すれば簡単なのですが、できるだけ使用しないように記述をしたいのです。そこで考えたのが、 SendMessage(GetDlgItem(hDlgWnd, IDC_PICTURE), WM_PAINT, 0, MAKELPARAM(0, number)); このようにnumberをLPARAMの下位ワードとして送信しようと考えました。 このメッセージ送信を行い、Picture ControlプロシージャでWM_PAINTメッセージが到着したとき、LOWORD(lparam)からnumberを取り出す。 実現したい目的のため、このような方法を考えましたが、エラーなく実行できるでしょうか? もしあやしい部分が見つかった場合はアドバイスをお願いします。そしてこの方法よりも簡単に処理できる方法があれば教えていただきたいです。 自分としてはサブクラス化は面倒なので、Picture Controlをオーナードローとして扱う方法も考えましたが、うまく動きませんでしたTT

  • vaSpreadコントロールのボタン色の変更

    いつも参考させてもらってます。 vaSpreadコントロールを使用しているんですが、セルタイプ(CellType)を ボタンにしてソース内でそのボタンの色を変えたいのですが、設定のやり方が分 かりません。 そのようなプロパティが見つからないのです。 どなたか分からないでしょうか? VIsual Basicからデザイナーを起動して変更できるので、ソースコードからも できるはずなんですが。。

  • C#で動的に配置したコントロール

    はじめまして 開発歴1年未満の開発者ですがよろしくお願いします。 開発環境 Visual Studio 2008 C# ASP.NET protected void Page_Load(object sender, EventArgs e) { TextBox TextBox = new TextBox(); TextBox.ID = "TextBox1"; TextBox.Text = "C# ASP.NET"; form1.Controls.Add(TextBox); } protected void Button1_Click(object sender, EventArgs e) { string strTextBox1 = ??????? } と上記のように読み込み時に、テキストボックスのみを動的に配置し、デザイナで配置したのボタンを押した際に、テキストボックスに入力された値を、取得したいのですが、方法がわかりません・・・ お忙しいとは、思いますがご回答よろしくお願いします。

  • スクロールバーでのピクチャーコントロールやリストビューの移動

    お世話になります。 今回お聞きしたいことは MFCでダイアログ上にリストコントロールとスクロールバー、またはピクチャーコントロールとスクロールバーを設置した際に、スクロールバーの移動に伴って、リストコントロール内の列や、ピクチャーコントロールに表示されている画像の見えている箇所を移動させることが出来るかどうか。 です。 まだ、本格的にプログラムを作り始めてるわけではないのですが、事前にこのような動作が実現可能かどうかお聞きしたく、質問させて頂きました。 もしご存知の方がいましたら、参考になるHPや方法を教えていただければと思っています。参考になるHPがなくても、実現可能かどうかだけ教えて下さるだけでも結構ですので、宜しくお願い致します。 開発環境は Windows CE 6.0 Visual Studio 2005 です。

  • 業務アプリによるユーザーコントロールの作成について

    業務アプリによるユーザーコントロールの作成について 業務アプリケーションの開発を 行おうとしています VB.net2010 システムはよくある 検索、結果一覧、参照、登録、などを実装予定です 開発前にまずVB.net標準のコントロールを継承カスタマイズし ユーザーコントロールを作成しようと考えています [質問] 一般的に独自のユーザーコントロールを作成するにあたり どのようなユーザーコントロールを用意するものでしょうか 主となる継承対象のコントロールは下記となります ・テキストボックス ・コンボボックス ・ラジオボタン ・チェックボックス ・データグリッドビュー 例)フォームに使用頻度の高いコントロールを配置し部品化する 例)テキストボックスに特殊文字しか入力できないような部品を用意する など箇条書き程度でもかまいませんのでお聞かせ願えると助かります ザックリとした質問で申し訳しないませんが 皆さんならどのようなコントロールを作るのか 今後の参考にさせて頂ければ幸いです よろしくお願いします。

  • win32 ダイアログリソース ピクチャコントロールで表示

    win32、visualC++2005、winxp_sp3で開発してます。 ダイアログリソースでピクチャコントロールを使いビットマップ画像を表示させたいのですが分かりません。 プロパティのIMEGEに画像の名前を入力するのだと思ったのですがダメでした。 画像はソリューションの中に入れてあるんですが・・・ 表示する方法を教えてください。 ほかのコントロールでも出来るならそれでもいいです。 本当に初心者でアホなんで誰か教えてください。m__m

  • ピクチャーコントロールへの描画方法について

    お世話になります、fujitomoです。 現在、Visual Studio2005にてC++のダイアログベースのアプリケーションを作成しており、行き詰った箇所があったため質問させて頂きました。 アプリケーションの内容としては 現在、アプリケーションで、ダイアログベース上にピクチャーコントロールを2つ設置し、それぞれに波形を描画させています。 ピクチャーコントロールへの波形の描画にはメモリデバイスコンテキストを使い、それぞれ波形描画用のCStatic派生クラスを作成し、そのクラスを SubclassDlgItem でメインダイアダイアログのサブクラスとし、描画間隔として、それぞれの描画クラス内で SetTimer(1,10,NULL) でタイマーイベントを起こし、メモリデバイスコンテキストの描画更新をしています。 ここで質問させていただきたい事なのですが、 2つのピクチャーコントロールのうち、1つのピクチャーコントロールへのみ波形描画を実行させているときはピクチャーコントロールの端から端まで描画が約7秒かかるのに対し、 2つのピクチャーコントロールの描画を同時に実行させた場合には端から端までで約11秒もかかってしまいます。 これを何とか、1つのピクチャーコントロールへの描画時間と同じ時間まで早く出来ればなと思っているのですが、どの様に工夫すれば時間短縮をさせることが出来ますでしょうか? 2つのクラスでそれぞれ10msのタイマーを動かしているのが問題なのかと思い、メインダイアログで10msのタイマーイベントを発生させ、それぞれの描画クラスに描画更新のメッセージを送信させるようにコードを変更してみたのですが、やはり同じ結果となりました。 開発環境は Widows CE 6.0 Visual Studio 2005 です。 ご意見、ご回答をお待ちしております。よろしくお願い致します。

  • ”SAP”をコントロールするアプリケーション作成

    ”SAP R/3”(http://www.sap.com/japan/index.epx)を操作するアプリケーションを作成したいと考えています。 やりたいことはSAPからのデータを取り出すため、テキストボックス(のようなもの?)に文字を入力したり、ボタンを押したりすることです。 当初Visual Studioでの作成を考えていたのですが、一部コントロールに独自のもの?を使っているのか把握するのに時間がかかっています。  そこで調べてみたところ"SAP .NET Connector"という.NET対応の開発環境があるようですが、SAPのカスタマーIDがないと入手できないようです。 SAPを導入している所からこれを入手してもらうのが一番ですが、わけがあって難しい状態でそれ以外の方法を模索しているところです。 無償で入手できる開発環境というものはあるのでしょうか? またSAPのアプリケーション(この場合クライアントになるのでしょうか)を作成するものとしてどんなものがあるか教えていただけないでしょうか?