Comments 59
это откуда?
это видимо разработка последней версии виндовс, до людей дошли первые скрины...
наверное на Делфи писали )
mr = MessageDlg('bla-bla-bla...', mtConfirmation, [mbYes, mbNo, mbCancel], 0);
mr = MessageDlg('bla-bla-bla...', mtConfirmation, [mbYes, mbNo, mbCancel], 0);
Почему именно на Delphi (у Вас, кстати, ошибка, должно быть mr :=)? Могли и на MSVC:
mr = MessageBox(hOwner, sMsg, sTitle, MB_YESNOCANCEL | MB_ICONQUESTION);
;-)
mr = MessageBox(hOwner, sMsg, sTitle, MB_YESNOCANCEL | MB_ICONQUESTION);
;-)
Да, можно и на Яве:
JOptionPane.showConfirmDialog(new JFrame(), "bla-bla",
"", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE)
Но вот почему-то такое окошко у меня ассоциируется с Делфи)
JOptionPane.showConfirmDialog(new JFrame(), "bla-bla",
"", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE)
Но вот почему-то такое окошко у меня ассоциируется с Делфи)
Ты совершенно прав дельпи ассациируется с *дло *ом.. имхо.. так что минусуйте на здоровье)
а еще с тотал коммандером
На Delphi написано некоторое ненулевое количество хороших программ - это правда. Но 99% программ написанных на Delphi - это как раз вот подобные поделки. Это - тоже правда.
Не подеритесь, горячие финские парни :-)
Не подеритесь, горячие финские парни :-)
Вы несправедливы к Дельфе.
На самом деле, правильный в данном случае диалог не сделать ни функцией WinAPI, ни имеющимися функциями VCL они все ограничены стандартным набором кнопок. В свое время мне даже пришлось писать свою реализацию подобного диалога, с кучей наворотов и т.п. как раз, чтобы избежать приведенных выше ситуаций. Теперь использую только свое :-)
На самом деле, правильный в данном случае диалог не сделать ни функцией WinAPI, ни имеющимися функциями VCL они все ограничены стандартным набором кнопок. В свое время мне даже пришлось писать свою реализацию подобного диалога, с кучей наворотов и т.п. как раз, чтобы избежать приведенных выше ситуаций. Теперь использую только свое :-)
или на c#
MessageBox.Show("Blablabla", "Подтверждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
MessageBox.Show("Blablabla", "Подтверждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
Ребята. Это вообще-то функция winAPI, т.е. функция самой ОС.
Какая прога ее вызовет от той и выполнится и не имеет значения на каком языке и компилляторе она(программа) создавалась.
Какая прога ее вызовет от той и выполнится и не имеет значения на каком языке и компилляторе она(программа) создавалась.
Да я такую форму же в VB за по часа сделаю!
И не говорите, вообще пользователей не уважают. Вот вообще программа, которая обзывается!


Предлагаю добавить кнопку (HELP), по которой пользователю объяснят отличие выделенных элементов от помеченных.
Просто школьник сделал домашнее задание.
Потом научится и будет нормальные программки делать.
Потом научится и будет нормальные программки делать.
В ряду кнопок YES|NO|CANCEL в таком диалоге не хватает одной "SHOOT YOURSELF IN THE FOOT"
Ну хоть не Ignore/Cancel/Retry.
Чем отличаются "выделенные элементы" от "помеченных" ? %)
А если винда русская этих кнопок (y/n/c) вообще не будет (сюрприз!)
Куда денутся?
Они будут называться Да, Нет и Отмена. И получится: "нажмите YES", а ее на экране и нет...
это саотря на чём пишете. На дельфях могу так и остаться yes/no/cancel.
Если не ошибаюсь, это надо хорошо постараться. Обычный вызов MessageBox() или аналога в любом другом языке (Дельфи или что угодно) переадресует к WinAPI, а далее показывается стандартный диалог.
Разумеется, можно наваять свой собственный диалог, но кому это нужно?..
Вот типичный пример того, что я часто наблюдаю у себя:

Разумеется, можно наваять свой собственный диалог, но кому это нужно?..
Вот типичный пример того, что я часто наблюдаю у себя:

Можно через WinAPI заюзать MessageBox диалог, где вместо Yes, No, Cancel будут определенные программистом значения.
Не понял юмора. Закрываешь окно и выскакивает подобное окно. «Да» — сохранить изменения и закрыть программу, «Нет» — закрыть не сохраняя, «Отмена» — не сохранять, но и не закрывать.
Это уже некий стандарт в редакторах.
Это уже некий стандарт в редакторах.
Я обсуждал вот какую проблему: в самом верхнем скриншоте темы автор диалогового окна пишет "yes/no/cancel" (в тексте подсказки). Этим он неявно подразумевает наличие у пользователя АНГЛИЙСКОЙ операционки. Если операционка на другом языке, то скорее всего, и кнопки будут локалзованы ("да/нет/отмена"). Таким образом, подсказка окажется обманкой, вводящей человека в заблуждение.
Когда Виста впервые задала мне этот вопрос, я реально затупил...
В заголовке окна на скрине стоит точка. Напоминает неудачный фейк.
Эх, если бы все проблемы юзабилити можно было решить большим количеством пояснений :) Ведь известно, что пользователи никогда не читают сообщения...
Думаю, что вариант: [Oh, Yeah!] [Yes] [No] был бы однозначно лучше.
Мда... супер. кому-то было лень делать свой месседжбокс :)
Как кто-то резонно сказал, стандартный диалог ВыньДаБрось ограничивается несколькими стандартными наборами кнопок наподобие "OK", "Yes/No", "Yes/No/Cancel"... Так что это - типичный пример "корявого" программирования.
Если вдруг такое случается и надо сделать по-хорошему, я пишу собственный диалог с тремя длиннющими кнопками: "Удалить выделенные", "Удалить отмеченные", "Отмена".
Если вдруг такое случается и надо сделать по-хорошему, я пишу собственный диалог с тремя длиннющими кнопками: "Удалить выделенные", "Удалить отмеченные", "Отмена".
Sign up to leave a comment.
Без комментариев