-
Есть ли для MessageBox или подобной стандартной WinAPI функции, выводящей диалог с кнопками, делать произвольный набор кнопок?
Задача вот откуда: хочется сделать нормально русифицированную замену дельфовой MessageDlg с тем же интерфейом, но у MessageDlg набор кнопок задается произвольно, а у MessageBox есть только предопределённые вариации состава кнопок.
Если ли аналог MessageBox, но с произвольно задаваемыми кнопками? то, что состав кнопок MessageBox покрывает все нормальные варианты - я понимаю, но мне нужно сделать аналог MessageDlg по программному интерфейсу с локализуемыми надписями на кнопках, как это волшебно делается в MessageBox
-
MessageBox c произвольным набором кнопок называется форма. Просто дорабатываешь конструктор как тебе надо. TMyForm.Create(MyCaption,MyMassage,MyButtonCaption);
-
У MessageBox есть прикольная фица: стандартный вид и волшебная локализация...
Ну что ж, нет так нет.
-
> ksergey © (06.10.14 21:49)
TaskDialog более гибок, но только для Vista и новее
-
О, не знал про такой Спасибо
-
Еще подумалось А может есть стандартный способ прямо из Windows получить локализованные строки для стандартных кнопок Ok / Cancel / Yes / No и т.п.? Сами строки в виде текста
-
> А может есть стандартный способ прямо из Windows получить > локализованные строки
есть конечно
-
Поделитесь, плиз, способом
-
"Сие тайна великая есть".
За запрос в гугль с подходящими результатами буду очень признателен, мне не удалось найти.
-
> KSergey © (16.10.14 14:53) [8]
> За запрос в гугль с подходящими результатами буду очень > признателен, мне не удалось найти.
плохо искал, даже на этом сайте есть: http://www.delphimaster.net/view/2-1198043861/allЕсли коротко, то все интересующие тебя строковые ресурсы лежат в user32.dll Достаются функцией LoadString() http://msdn.microsoft.com/ru-ru/library/windows/desktop/ms647486(v=vs.85).aspx Открой в любом редакторе, который может посмотреть ресурсы внутри исполняемого файла (например, встроенным VisualStudio или ResourceHacker каким нибудь и поищи нужное тебе). Строки от MessageBox пасутся в районе 800 индекса. 801 - "Cancel" 805 - "Yes" и т.д.
|