![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Как вы обрабатываете ошибки в своих программах? Т.е. если пользователь вводит недопустимые значения.
Можно ли как-то заменить стандартную процедуру ShowMessage на что-то более интересное? Хотелось бы например вставить в сообщение картинку, поменять заголовок появляющегося окна на что-то наиболее подходящее чем Project1, ввести дополнительные кнопки кроме OK |
#2
|
||||
|
||||
![]() Вот тут пример усовершенствование стандартного Message Dialog'a.
Начинающий программист уверен, что в 1 килобайте 1000 байт.
Законченный программист уверен, что в 1 километре 1024 метра. |
#3
|
||||
|
||||
![]() Статья у Декодинга хороша, но возможно человек просил что-нибудь попроще.
Есть 2 простые функции MessageDlg(); MessageBox(); В стандартном хэлпе про них подробно написано, глянь. Ну и вот тебе примеры вызова их: Код:
... MessageDlg('My Error Message', mtError, [mbOK], 0); ... MessageBox(0, 'My Information Message', 'WARNING', mb_IconInformation + mb_OK + mb_TaskModal); Нет повести печальнее на свете, чем повесть о заклиневшем Resete. ![]() |
#4
|
|||
|
|||
![]() Для полной красоты можно использовать MessageBox. Про него я подробно рассказал вот тут.
По поводу обычного MessageBox: я предпочитаю Application.MessageBox();. Мне как-то удобнее с ним. P.S. Прикладываю код своего MessageBox'а. Тапком не бейте, пожалуйста ![]() Auta i Lome... |
#5
|
||||
|
||||
![]() Если вы озадачились красивым оформлением, то для этого написано масса компонентов. Одним из самых красивых, и что не менее важно бесплатных для Россиян, является AlphaControl. Немножко менее красивый, зато со своими мессаджами SUIPack, но он платный.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#6
|
|||
|
|||
![]() AlphaControl использую, но командой ShowMessage ('текст сообщения'); выводится стандартное окно (оформленно как у текущей темы, в моем случае интерфейс Vista), но мне не нравится заголовок окна Project1, я бы хотел его менять в зависимости от рода ошибки на что-то более приглядное типа "Ошибка входных данных" и т.д. Плюс еще хотел бы добавлять произвольные изображения в форму.
Спасибо за ответ, попробую почитать про MessageDlg(); и MessageBox(); |
#7
|
||||
|
||||
![]() Можно добавить еще, что функция Messagebox возвращает определенное значение типа Integer в зависимости от того, какая кнопка была нажата на диалоговом окне:
3 - Пользователь выбрал кнопку Abort 2 - Пользователь выбрал кнопку Cancel. 5 - Пользователь выбрал кнопку Ignore. 7 - Пользователь выбрал кнопку No. 1 - Пользователь выбрал кнопку ОК. 4 - Пользователь выбрал кнопку Retry. 6 - Пользователь выбрал кнопку Yes. |
#8
|
||||
|
||||
![]() Цитата:
Менять можно через Project->Options. Но одновременно меняется текст на кнопке в таскбаре. Изучай MessageBox и MessageDlg... полезно... |