Netspirit, Перезалил в 1 топике
------------ Дoбавленo:
Не хватает возможности закрытия звездочками вводимых символов
Этот топик читают: Гость
Ответов: 1328
Рейтинг: 69
|
|||
карма: 2 |
|
Ответов: 4630
Рейтинг: 749
|
|||
В принципе это возможно, но тут щас опять будут говорить, что "это все усложняет", "увеличивает размер кода", "можно сделать штатными средствами" и т.п. Я потом посмотрю и скажу тебе, что в коде добавить, чтоб отображались "*". Я вот че думаю: не наконструировать ли еще часто используемых диалогов, типа "Ввод имени и пароля", "Статус процесса" (Прогресс-бар+ кн. Отмена), "Yes-Yes to all-No-No to all" и т. д.?
------------ Дoбавленo: Dilma писал: "Всплывет оно тогда, когда некто захочет InputBox вставить в консольное приложение..." Во-первых, я так понимаю основной спор о том, что лучше: отдельный компонент или "Модальная форма с кнопками". В этом случае консольная программа - неудачный пример так, как оба варианта одинаково непригодны. Во-вторых, если кто и захочет впихнуть InputBox в консоль, то сразу поймет, что это бесполезно (как гласит закон Мерфи "Если что-то можно сделать неправильно, то оно будет кем-то сделано неправильно"). Лично я, запуская консольную программу, не ожидаю там увидеть даже MessageBox, не то, что OpenSave Dialog. ------------ Дoбавленo: Konst, чтобы отображались "звёздочки", найди в коде текст [eoNoVScroll] и замени его на [eoNoVScroll, eoPassWord]. Лучше сделай копию компонента (иначе все InputBox’ы в проекте будут такими) или добавь новое свойство (смотри, как реализовано св-во Position). Не уверен, добавлять ли в следующую версию так, как это все-таки довольно редко используемая возможность и мало кто ожидает этого от InputBox. |
|||
карма: 26 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 8 раз(а), последний 2022-02-28 19:04:04 |
|||
карма: 0 |
|
Ответов: 4630
Рейтинг: 749
|
|||
InputBox v2.0
Новая, полностью переделанная, версия компонента. В данной версии использование компонентов KOL было заменено на API-функции для работы с диалогами. Для Delphi с помощью директив условной компиляции диалог создается из ресурса, а для FPC шаблон диалога создается в памяти (мне не удалось заставить FPC компилироватся с этим ресурсом, да и с любым другим...) Преимущества: - код и размер компонента стал меньшим (для компилятора Delphi к исполняемому файлу подключается ресурс диалога (ок. 300 байт) и каждый экземпляр состоит из двух небольших процедур). Для FPC ресурс не используется, а шаблон диалога создается в памяти дополнительной процедурой (при этом размер экземпляра компонента несколько больший, чем для Delphi); - отказ от KOL позволил использовать компонент в приложениях без формы (в том числе и консольных программах); В приложенном архиве "Тестовые схемы" предлагаю две одинаковые схемы для сравнения размера исп. файлов при использовании компонента и при имитации компонента дочерней формой. Схемы состоят из пяти кнопок, которые вызывают по одному InputBox в виде компонента и в виде дочерней формы. Откомпилировав схемы, вы увидите, что использование дочерних форм для имитации компонента увеличивает размер файла на 19 КВ (для Delphi, для FPC разница в 32 КВ), а это 30% для этих схем. Поэтому компонент, как мимнимум, в плане размера, выигрывает у дочерних форм. Тестовая схема с новой версией компонента на 2 КВ меньше чем с предыдущей. Из недостатков можно отметить то, что текстовая надпись имеет постоянную высоту и вмещает две строки текста (чего в большинстве случаев достаточно), а для изменения высоты нужно править ресурс. После установки скопируйте файл InputBox.res в папку ..HiAsmElementsDelphicode Так что, кому компонент нравится - качайте и пользуйтесь. |
|||
карма: 26 |
| ||
Голосовали: | filyaxxxcom, Астрамак, andrestudio |
Ответов: 4630
Рейтинг: 749
|
|||
InputBox v2.2
Усовершенствованная версия компонента: - оптимизирован код; - добавлено свойство "Password"; - текстовая надпись изменяет свою высоту в зависимости от количества строк. Если вы пользовались предыдущей версией - можете удалить файл InputBox.res из папки ..code Редактировалось 2 раз(а), последний 2022-01-06 21:49:22 |
|||
карма: 26 |
| ||
файлы: 1 | inpboxscreen.jpg [7.3KB] [1094] | ||
Голосовали: | Genius |
Ответов: 99
Рейтинг: 4
|
|||
Вопрос, а где v2.0 и v2.2? Что-то даже по поиску я не могу найти эти версии.
|
|||
карма: 0 |
|
Ответов: 4630
Рейтинг: 749
|
|||
InputBox v2.2
Редактировалось 1 раз(а), последний 2022-01-07 19:31:46 |
|||
карма: 26 |
|
Ответов: 99
Рейтинг: 4
|
|||
А, хорошо, спасибо.
Кстати, а можно ли добавить свойства для того, чтобы менять названия кнопок? Что-то не очень хочется лезть в исходник компонента. |
|||
карма: 0 |
|
Ответов: 5227
Рейтинг: 587
|
|||
TheRenat писал(а): Кстати, а можно ли добавить свойства для того, чтобы менять названия кнопок? Что-то не очень хочется лезть в исходник компонента.Вот реально от новогодних праздников тяжело отходить, это нужно всех поздравить и при этом не упится Тут уж грешным делом начинаешь соображать, вот бы свой исходничик найти, вдруг господь там в пару годков обсчитался |
|||
карма: 4 |
|
Ответов: 99
Рейтинг: 4
|
|||
TheRenat писал(а): Кстати, а можно ли добавить свойства для того, чтобы менять названия кнопок? Что-то не очень хочется лезть в исходник компонента.Я ожидал что никто не будет это делать, кроме меня, конечно. Ну вот я и сделал версию 2.4. Из изменений только имеется возможность изменить текст на кнопках. |
|||
карма: 0 |
| ||
файлы: 1 | InputBox2.4.zip [3.2KB] [301] |
Ответов: 4630
Рейтинг: 749
|
|||
TheRenat писал(а): Я ожидал что никто не будет это делатьПочему же? Я сделал. InputBox v2.3 - возможность задавать свои надписи на кнопках - другие переработки Редактировалось 3 раз(а), последний 2022-01-07 19:32:33 |
|||
карма: 26 |
| ||
файлы: 1 | InputBox v2.3.rar [5.3KB] [342] |
Ответов: 793
Рейтинг: 168
|
|||
Если не желать чего-то особенного, то можно вызвать InputBox стандартными компонентами.
|
|||
карма: 16 |
|
Ответов: 315
Рейтинг: 26
|
|||
Gunta просто магистр повер шелл. Моё уважение.
Редактировалось 1 раз(а), последний 2022-01-08 15:51:53 |
|||
карма: 2 |
|
Разработчик
Ответов: 26156
Рейтинг: 2127
|
|||
Gunta, а на кой черт в первом примере FormatStr?
Это же все безобразие решается одним скриптом: Схема
|
|||
карма: 22 |
|
Ответов: 793
Рейтинг: 168
|
|||
nesco писал(а): а на кой чертАбсолютно не нужен. Но в твоём варианте код "раздут" аж в 3 раза (300%) и составляет 3 строчки вместо одной InputBox имеет значительно больше параметров и иногда проше делать всё в FormatStr https://docs.microsoft.com/ru-ru/office/vba/language/reference/user-interface-help/inputbox-function Редактировалось 3 раз(а), последний 2022-01-08 18:33:51 |
|||
карма: 16 |
|