choice= MessageDlg("Do you want to save your changes?",
TMsgDlgType::mtConfirmation,
TMsgDlgButtons() << TMsgDlgBtn::mbYes
<< TMsgDlgBtn::mbNo
<< TMsgDlgBtn::mbCancel,
0);
위의 내용은,
https://forums.embarcadero.com/thread.jspa?threadID=105134
에서 가져왔습니다.
return value 는,
http://docwiki.embarcadero.com/Libraries/Rio/en/FMX.Dialogs.MessageDlg
에서 확인하세요.
참고로, 저는, 안드로이드 앱에서, 사용자가 안드로이드 기기의 뒤로가기(Back) 버튼을 누를 경우, 앱을 종료시킬 것인지 확인하는 기능이 필요해서, 아래와 같이 사용 중 입니다.
#include <FMX.VirtualKeyboard.hpp> // for Virtual Keyboard (가상키보드)
//---------------------------------------------------------------------------
class TExitDialogBox : public TCppInterfacedObject< TInputCloseDialogProc >
{
private:
TForm *FForm;
public:
__fastcall TExitDialogBox(TForm * AForm) : FForm(AForm){}
void __fastcall Invoke(const System::Uitypes::TModalResult AResult) {
if( AResult == mrOk || AResult == mrClose ) {
Application->Terminate() ;
return ;
};
};
};
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormKeyUp(TObject *Sender, WORD &Key, System::WideChar &KeyChar,
TShiftState Shift)
{
if (Key==vkHardwareBack) {
String stMsg = L"Do you want to close this App?" ;
_di_TInputCloseDialogProc AExitDialogBox = new TExitDialogBox(this);
MessageDlg( stMsg, TMsgDlgType::mtWarning, TMsgDlgButtons() << TMsgDlgBtn::mbClose << TMsgDlgBtn::mbNo, 0, AExitDialogBox );
Key = 0;
} ;
}
//---------------------------------------------------------------------------
을지초 손재용입니다. 님이 쓰신 글 :
: if(MessageDlg("추가 사항을 저장하시겠습니까?",mtConfirmation,TMsgDlgButtons()<<mbYes<<mbNo,0)==mrYes)
: {
: ShowMessage("hello");
: }
:
: 위의 코드는 멀티디바이스에서는 안되도라구요
: VCL에서만 진행이 되더라구요~
:
: rad-Multi Device에서 저코드가 되는 방법좀 부탁드립니다.
:
:
:
: