Как удалить поля подменю MenuStrip?

Let’s говорят создание исполняемого файла, который использует некоторые функции, найденные в библиотеке.

, Если библиотека Вы используете, статичны , компоновщик скопирует объектный код для этих функций непосредственно из библиотеки и вставит их в исполняемый файл.

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

, Если библиотека динамичная , компоновщик не введет объектный код, а скорее это вставит тупик, который в основном говорит, что эта функция расположена в этом DLL в этом местоположении.

Теперь, если этот исполняемый файл выполняется, биты исполняемого файла отсутствуют (т.е. тупики), таким образом, загрузчик проходит исполняемый файл, согласовывающий недостающие тупики. Только после того, как все тупики были разрешены, будет исполняемый файл быть позволенным работать.

, Чтобы видеть это в действии удалять или переименовывает DLL и смотрит, как загрузчик сообщит о недостающей ошибке DLL, когда Вы попытаетесь выполнить исполняемый файл.

Отсюда имя [1 111] Динамически подключаемая библиотека , части процесса соединения делаются динамично во время выполнения исполняемым загрузчиком.

Один заключительное примечание, если Вы не связываете с DLL тогда тупиков, будет вставлено компоновщиком, но Windows все еще обеспечивает GetProcAddress API, который позволяет Вам загружать выполнение точки входа функции DLL еще долго после того, как исполняемый файл запустился.

17
задан kyrisu 12 May 2009 в 17:19
поделиться

1 ответ

Очень похоже, но вместо использования "ContextMenuStrip" "(который используется в вашей статье MSDN ), вы должны использовать" ToolStripDropDownMenu ". Таким образом:

((ToolStripDropDownMenu)noMargins.DropDown).ShowImageMargin = false;

Например, если вы хотите удалить все поля изображения из строки меню под названием «menuStrip1», добавьте этот код в процедуру инициализации формы:

// Removing image margins (space for icons on left) from menubar items:
foreach (ToolStripMenuItem menuItem in menuStrip1.Items)
    ((ToolStripDropDownMenu)menuItem.DropDown).ShowImageMargin = false;
33
ответ дан 30 November 2019 в 12:13
поделиться
Другие вопросы по тегам:

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