線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1222
推到 Plurk!
推到 Facebook!

ShowMessage如何顯示多行,且顯示圖示?

尚未結案
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-07-03 00:29:59 IP:219.81.xxx.xxx 未訂閱
我要使用ShowMessage秀出一些message,但此對話框裡面的message可以有多行,且他要出現一些warning或是error的圖示,不曉得能不能用ShowMessage就做的到?或是有其它方式? 發表人 - nlj859 於 2004/07/03 00:39:26
Brian77
中階會員


發表:8
回覆:114
積分:94
註冊:2002-05-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-07-03 01:03:50 IP:61.221.xxx.xxx 未訂閱
改用 MessageBox 函式, 它可以指定圖示為警示、問題、... 訊息要多行可加上 #13 (ShowMessage 也可以) 比如: ShowMessage('這是第一行'#13'這是第二行');
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-07-03 01:14:26 IP:219.81.xxx.xxx 未訂閱
ShowMessage('這是第一行'#13'這是第二行'); 這個範例好像不行耶... 另外,關於MessageBox,可不可以也寫個範例參考一下? 謝謝.
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-07-03 01:33:23 IP:203.204.xxx.xxx 未訂閱
nlj859 你好
  MessageDlg('第一行' #13 '第二行',mtWarning,[mbOK],0        ) ;    可用圖示如下:
mtWarning                 A message box containing a yellow exclamation point symbol.
mtError              A message box containing a red stop sign.
mtInformation        A message box containing a blue "i".
mtConfirmation        A message box containing a green question mark.
mtCustom        
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-07-03 01:44:00 IP:219.81.xxx.xxx 未訂閱
還是不行耶~ 把 
 MessageDlg('第一行' #13 '第二行',mtWarning,[mbOK],0        ) ;
貼入後還是有錯誤產生..
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-07-03 02:25:31 IP:203.204.xxx.xxx 未訂閱
nlj859 你好 有沒有uses 到 Dialogs 抱歉,沒注意到這是C 的版面,底下言行是Delphi的寫法,c 我不知如何改寫 MessageDlg('第一行' #13 '第二行',mtWarning,[mbOK],0 ) ; 發表人 - chance36 於 2004/07/03 02:43:07
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-07-03 11:14:32 IP:140.113.xxx.xxx 未訂閱
nlj859兄您好,看來 MessageBox 應是您要的。 在此簡單介紹一下 MessageBox 的用法。 int MessageBox(const char* Text, const char* Caption, int Flags); Text : 您要顯示的訊息 Caption : MessageBox 的標題 Flags : 設定要顯示哪些東西
以下是 Flags 的設定值
0 (MB_OK) : OK按鈕
1 (MB_OKCANCEL) : OK, Cancel按鈕
2 (MB_ABORTRETRYIGNORE) : Abort, Retry, Ignore按鈕
3 (MB_YESNOCANCEL) : Yes, No, Cancel按鈕
4 (MB_YESNO) : Yes, No按鈕
5 (MB_RETRYCANCEL) : Retry, Cancel按鈕
16 : 圖示
32 : 圖示
48 : 圖示
64 : 圖示
0 :   將第一按鈕設為預設
256 : 將第二按鈕設為預設
512 : 將第三按鈕設為預設
將數字加起來就可以得到你要的樣式了。
以下是它的回傳值,代表按了什麼按鈕,您可根據回傳值做些相應的動作。
1 (IDOK)
2 (IDCANCEL)
3 (IDABORT)
4 (IDRETRY)
5 (IDIGNORE)
6 (IDYES)
7 (IDNO)
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-07-03 12:19:04 IP:219.81.xxx.xxx 未訂閱
hello, 照你的說法使用MessageBox("asdasd","asd",0);就可秀出一個message box. 但是我試過還是不行,它必須前面要加一個Application,例如: Application->MessageBox("This is a example", "Look", MB_OK); 目前我要讓它能過做到的是:我的message要有好幾行,不是單只有一行,不曉得程式該怎麼加??
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-07-03 21:05:22 IP:140.113.xxx.xxx 未訂閱
引言: hello, 照你的說法使用MessageBox("asdasd","asd",0);就可秀出一個message box. 但是我試過還是不行,它必須前面要加一個Application,例如: Application->MessageBox("This is a example", "Look", MB_OK); 目前我要讓它能過做到的是:我的message要有好幾行,不是單只有一行,不曉得程式該怎麼加??
    String s = "這是測試1\n";
    s  = "這是測試2";
    Application->MessageBox(s.c_str(), "Test", 32 3);  //最後的Flag可用數字組合.
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-07-03 23:41:48 IP:211.76.xxx.xxx 未訂閱
nlj859您好:   chtai已回答了您的問題!   如果您是希望能動態的依據相關的狀態產生訊息的話,底下可以參考,
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString msg="", eachLine;      for (int k=0; k<5; k  )
     { eachLine.printf("This is line %d.\n");
       msg  = eachLine;
     }      Application->MessageBox(msg.c_str(), "Multi Lines", MB_OK);
}
系統時間:2024-11-22 18:14:46
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!