アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつも大変お世話になっております。
VC++初心者です。

早速質問なのですが、
ダイアログ中央に、テキストラベルを表示するには
どのように設定すれば宜しいでしょうか。

また、テキスト内容がそのダイアログの横幅以内に収まらない場合、
折り返して表示をさせるにはどうすれば宜しいでしょうか。

お手数ですが、よろしくお願いします。

A 回答 (2件)

 こんにちは。


 ラベルのAutoSizeをfalseにすれば、テキスト数に合わせてサイズが変化する事はありません。
 以下参考程度に。

private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e)
{
//ダイアログの隅から離したい間隔
Drawing::Point ptBlank = Drawing::Point(5, 5);

//収まりきれないテキストの自動処理
this->label1->AutoEllipsis = true;

//テキスト数に影響されない様にする
this->label1->AutoSize = false;

//見ての通り
this->label1->Text = "ああああああああああああああああああああああああああああああああああああああ";

//ダイアログ左から離す間隔
this->label1->Location = ptBlank;

//ダイアログ右から離す間隔
this->label1->Size = this->ClientSize - Drawing::Size(ptBlank.X * 2, ptBlank.Y * 2);
}

この回答への補足

早速のご回答、ありがとうございます。

label1を用意し、
上記のコードをそのまま転用してみました。
※label1はダイアログの上下左右の中央に用意しました。

そうすると、ダイアログの上端に"あああ...."が表示さました。
初期状態の位置の高さを始点として、
ダイアログ幅に対して中央に(文字が多いときは折り返して)
表示は出来ないのでしょうか。

大変お手数だと思いますが、よろしくお願いします。

補足日時:2009/08/27 22:26
    • good
    • 0

#1のサンプルコードに


this->label1->TextAlign = HorizontalAlignment::Center;
を追加。

この回答への補足

ご回答、ありがとうござます。

以下のエラーが1件出てきました。
>error C2664: 'System::Windows::Forms::Label::TextAlign::set' :
>1 番目の引数を 'System::Windows::Forms::HorizontalAlignment' から
>'System::Drawing::ContentAlignment' に変換できません。
>(新しい機能 ; ヘルプを参照)
>この変換には static_cast、C スタイル キャストまたは
>関数スタイル キャストが必要です。

補足日時:2009/08/30 23:30
    • good
    • 0
この回答へのお礼

一度、こちらの質問を閉じさせて頂きます。

ご回答して頂き、ありがとうございました。

お礼日時:2009/09/13 22:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!