Создайте файл DMG [дубликат]

Две опции:

  1. Использование NumericUpDown вместо этого. NumericUpDown делает фильтрацию для Вас, которая хороша. Конечно, это также дает Вашим пользователям способность поразить стрелки вверх и вниз в клавиатуру, чтобы увеличить и постепенно уменьшить текущее значение.

  2. Дескриптор соответствующие события клавиатуры для предотвращения чего-либо кроме числового входа. Я имел успех с этим два обработчика событий на стандартном TextBox:

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
        if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) &&
            (e.KeyChar != '.'))
        {
                e.Handled = true;
        }
    
        // only allow one decimal point
        if ((e.KeyChar == '.') && ((sender as TextBox).Text.IndexOf('.') > -1))
        {
            e.Handled = true;
        }
    }
    

можно удалить проверку на '.' (и последующая проверка на больше чем один '.'), если TextBox не должен позволять десятичные разряды. Вы могли также добавить проверку на '-', если Ваш TextBox должен позволить отрицательные величины.

, Если Вы хотите ограничить пользователя для количества цифры, используйте: textBox1.MaxLength = 2; // this will allow the user to enter only 2 digits

19
задан Quinn Taylor 6 August 2009 в 17:44
поделиться

5 ответов

Дисковая утилита (находится в Applications \ Utilities )

Перейдите в Файл > Новый > Образ диска из папки , затем выберите папку, образ которой вы хотите создать. Полученный .dmg будет копировать папку, которую вы использовали для создания изображения, вплоть до позиций значков.

17
ответ дан 30 November 2019 в 02:39
поделиться

Если у вас есть один файл, который пользователь мог бы вероятно, скопируйте в каталог Applications, образ диска с доступом в Интернет - хорошая альтернатива. Когда вы загружаете один с помощью Safari (я знаю, что не все используют Safari), он автоматически монтирует его, копирует содержимое в место загрузки, затем отключает DMG и перемещает его в корзину. Приложение не переходит в Приложения автоматически, но находится на жестком диске пользователя, и им не нужно беспокоиться о том, чтобы возиться с образом диска.

Образы дисков можно подключить к Интернету с помощью одной команды терминала:

hdiutil internet-enable -yes "MyDiskImage.dmg"

Это должно работать с любым файлом DMG. Если вы хотите, чтобы пользователи видели ваш красивый фон, возможно, вы не захотите этого делать. Однако для простых полезных нагрузок это хороший способ. (Конечно, некоторые люди в любом случае предпочли бы создать ZIP-файл для такого развертывания.)


Я считаю, что создание DMG вручную может быть проблемой. Фактически вы можете автоматизировать создание простого DMG в своем проекте Xcode. Просто создайте цель сценария оболочки (Проект → Новая цель ...) и используйте в сценарии hdiutil . Команда будет выглядеть примерно так (с заменой правильных имен и каталогов):

hdiutil create -fs HFS+ -volname "MyApp 1.0" -srcfolder \
"/directory/with/contents/to/package/" "~/Desktop/MyApp-1.0.dmg"`

Вам нужно будет поместить все, что вы хотите включить в образ диска, в один каталог, но если вы не боитесь использовать cp в Терминале, это легко сделать.

Если вы хотите увидеть пример, я сам использую этот подход в CHDataStructures.framework . Если вы проверите код и откроете его в Xcode, второй сценарий в целевом объекте развертывания создаст DMG.

19
ответ дан 30 November 2019 в 02:39
поделиться

И поскольку ответов уже недостаточно ...

Я создал DMG для чтения и записи с нужным мне макетом - фоновое изображение, размер, ярлык для значка приложения и пустая папка для моего приложения. Я написал простой скрипт bash , чтобы сделать копию этого DMG, смонтировать его, скопировать мое приложение в пустую папку, отключить DMG и затем преобразовать его в режим только для чтения.

Но DMG Canvas может выполнить весь этот процесс за вас, а также предоставляет инструмент командной строки, который вы можете использовать для автоматизации этого процесса из ваших сборок Xcode, поэтому я бы действительно рекомендовал это вместо своего решения.

3
ответ дан 30 November 2019 в 02:39
поделиться

MacBreak Dev сделал небольшой хороший скринкаст о создании файлов DMG с использованием рабочего процесса Automator. Делает вещи очень простыми, очень быстрыми, и вы можете настроить фон для своего DMG. Вы можете увидеть это по адресу: http://www.pixelcorps.tv/mbkd_010

0
ответ дан 30 November 2019 в 02:39
поделиться

Dr. Ник собрал красивый рубиновый гем, который выполняет большую часть этой работы за вас, вам просто нужно предоставить проект xcode и немного графики. Ссылка здесь:

http://drnicwilliams.com/2009/02/03/choctop-packaging-and-deployment-of-cocoa-applications/

Это отличный пакет, решающий задачи, которые иначе - боль ...

- Эван

8
ответ дан 30 November 2019 в 02:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: