Путь разработчика    

Перечисление записей в метафайле в C#

eda2480d

Пример Отображение метафайла Windows (wmf) в C# < / a> показывает, как рисовать метафайл. В этом примере показано, как перечислять записи в метафайле, представляющие его команды рисования, и рисовать только некоторые из них.

Когда вы вводите имя метафайла и нажимаете кнопку Enumerate, следующий код перечисляет записи метафайла в ListBox слева от программы.

Python

Программа очищает ListBox, делает Bitmap подходящей для области рисования и очищает ее. Затем открывается метафайл.

Обычно вы используете класс Graphics для рисования метафайла. Этот класс предоставляет метод EnumerateMetafile, поэтому программа создает объект Graphics и вызывает EnumerateMetafile, передавая ему метафайл, точку, в которой метафайл должен использовать как источник (который на самом деле не используется, пока мы просто перечисляем записи), и метод обратного вызова. Метод EnumerateMetafile вызывает метод обратного вызова ListRecords для каждой записи метафайла.

Следующий код показывает метод ListRecords.

Python

Этот код просто добавляет имя каждой записи метафайла в ListBox программы. Он возвращает true, чтобы продолжить перечисление. (Если метод возвратил false, перечисление остановится, прежде чем перечислять все записи.)

После того, как вы перечислите записи, вы можете выбрать некоторые из них в ListBox. Затем, когда вы нажимаете кнопку «Рисовать», программа снова перечисляет записи метафайла, на этот раз используя следующий метод DrawRecords в качестве метода обратного вызова.

Python

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

Если запись метафайла не выбрана, код использует метод PlayMetafile метафайла для рисования текущей записи метафайла. (Переменные NextRecordNumber и TheMetafile инициализируются в коде, который вызывает EnumerateMetafile.)

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

Источник: http://csharphelper.com/blog/2016/12/enumerate-the-records-in-a-metafile-in-c/



Отзывы (через Facebook):

Оставить отзыв с помощью аккаунта FaceBook:

Добавьте метод расширения ToString в структуру TimeSpan в C#

До версии .NET Framework 4.0 вы не смогли бы передать ToString структуру TimeSpan структуры формата, поэтому результат всегда был в форме hh: mm: ss .fffff...

25 02 2021 1:43:28

Как создать файл в Java

Класс File имеет три конструктора и ряд полезных методов. Ниже перечислены три конструктора: Для создания файла используйте метод File.createNewFile(). Это...

24 02 2021 14:24:17

Отображать системные метрические значения с описаниями на C#

Пример Получить системные показатели на C# показывает, как получить систему метрики, но краткие имена метрик затрудняют понимание результатов. В этом приме...

23 02 2021 16:33:39

Получите серийные номера системной платы и идентификаторы ЦП в C#

В этом примере показано, как получить серийные номера системной платы и идентификаторы Ц П. WMI ( Инструмент управления Windows) позволяет использовать SQL-п...

22 02 2021 17:12:47

Как определить ОС на клиентском компьютере в JavaScript?

Свойство Window.navigator только для чтения возвращает ссылку на объект Navigator, который может быть запрошен для получения информации о приложении, выпол...

21 02 2021 7:19:47

Отображение предопределенных значков системы в C#

В этом примере отображаются доступные системные значки. Следующий способ DrawIconSample отображает значок и его название. Код вызывает метод Graphics объек...

20 02 2021 1:44:43

Оператор if-else в Java Примеры и синтаксис

Принятие решений является важной частью программирования. Он используется для указания порядка выполнения операторов. На этом уроке вы узнаете, как создава...

19 02 2021 11:36:30

Загрузите изображение во время выполнения в WPF и C#

В этом примере показано, как загрузить изображение во время выполнения в программе WPF. Как это часто бывает с WPF, это легко, когда вы знаете, что делать....

18 02 2021 21:48:39

Что такое интерфейс в C#

Что такое интерфейс? Интерфейс похож на чистый абстрактный класс, который содержит только абстрактные методы Детский класс должен обеспечить реализацию для...

17 02 2021 15:17:44

Установите пиксели в растровом файле WPF в C#

В этом примере показано, как вы можете манипулировать пикселями в растровом файле WPF. Одна из вещей, которые мне меньше всего нравятся в WPF, - это то, ка...

16 02 2021 6:34:45

Сбор мусора в C#

В этом примере показано, как вы можете принудительно собрать сборку мусора на C#. Языки .NET используют схему сбора мусора управления памятью. Есть несколь...

15 02 2021 7:48:39

Сделать общие методы Min и Max в C#

В этом примере показано, как вы можете создать общие методы Min и Max, чтобы найти минимальное и максимальное значения в последовательности параметров. Мет...

14 02 2021 10:27:10

Как быстро научиться программировать: 7 советов

Как быстро научиться программировать? Чтобы облегчить обучение программированию и хорошо усвоить основы, необходимо правильно выбрать темп работы и использовать некоторые способы....

13 02 2021 18:39:24

Привязать DataGrid к набору данных, содержащему несколько таблиц во время выполнения в C#

В этом примере показано, как можно привязать элемент DataGrid к DataSet, загруженному из файла MDB во время выполнения. Когда форма загружается, следующий...

12 02 2021 0:20:52

Класс InputStreamReader в Java

Класс InputStreamReader считывает символы из байтового входного потока. Он считывает байты и декодирует их на символы с использованием указанной кодировки....

11 02 2021 12:45:52

Нарисуйте простую гистограмму в C#

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

10 02 2021 2:45:10

Класс FileReader в Java

FileReader - это характерно-ориентированный класс, который используется для обработки файлов в Java. Он предназначен для чтения потоков символов. Один симв...

09 02 2021 10:43:52

Сравните производительность команд if-else и switch в C#

Пример Сравните скорости условного оператора (тройной оператор? :) и оператор if-else в C# сравнивает производительность двух видов условных тестов. Джонни...

08 02 2021 18:38:35

Метод Java String concat()

Конкатенация строк - это процесс объединения двух или более маленьких строк для создания большей строки. В Java вы можете комбинировать строку несколькими...

07 02 2021 16:19:30

Виды языков программирования и их назначение

Какие существуют виды языков программирования? Какое у них назначение? Существует большое количество языков программирования, которые активно применяются для решения как некоторого узкого круга задач, так и во многих довольно широких сферах деятельности....

06 02 2021 14:36:38

Как нарисовать выравниваемый текст в C#

Класс StringFormat имеет свойства Alignment и LineAlignment, которые позволяют рисовать выравниваемый текст. Они позволяют указать, как вы хотите выравнива...

05 02 2021 13:27:18

Преобразование двоичного числа в десятичное в C#

В этой статье мы напишем программу на C# для выполнения преобразования из двоичного числа в десятичное. Вывод:  ...

04 02 2021 17:43:40

Понимание переходных переменных в Java

Сериализация в Java - это механизм записи состояния объекта в поток байтов, а десериализация - это процесс преобразования потока байтов обратно в копию исх...

03 02 2021 23:28:27

Показывать сложный интерес в C#

Это более графическая версия примера Рассчитайте значение ежемесячной инвестиции в C# . Вместо добавления значений в элемент управления ListView этот приме...

02 02 2021 15:57:31

Использование свойства ActiveControl в C#

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

01 02 2021 1:45:54

Среда разработки PyCharm

PyCharm – интегрированная среда разработки для Python. Разрабатывалась компанией JetBrains. За основу взята другая интегрированная среда разработки Intelli...

31 01 2021 21:30:16

Получить имя исполняемого метода в C#

В этом примере показано, как вы можете получить имя метода для текущего исполняемого метода. Обычно вам не нужно получать это имя (вы можете просто посмотр...

30 01 2021 3:38:58

Кортеж (Tuple) в Python

Кортеж представляет собой совокупность неизменных Python объектов, разделенных запятыми. Кортежи похожи на списки, но мы не можем изменить элементы кортежа...

29 01 2021 4:22:58

Философия Java (Брюс Эккель)

Java нельзя понять, взглянув на него только как на коллекцию некоторых характеристик, - необходимо понять задачи этого языка как частные задачи программиро...

28 01 2021 6:26:54

Как использовать блокировки в Java

При написании такого многопоточного кода вы должны уделять особое внимание при одновременном доступе к совместно используемым изменяемым переменным из неск...

27 01 2021 7:24:33

Что такое числовое продвижение? Java

Числовое продвижение, также известное как « Неявное преобразование» или «автоматическое преобразование Java», где автоматическое преобразование значения мен...

26 01 2021 21:39:32

Загрузка статического и динамического класса в Java

Концепция загрузчика классов, один из краеугольных камней виртуальной машины Java (JVM). В нем описывается поведение преобразования именованного класса в б...

25 01 2021 17:39:33

Многопользовательские игры. Разработка сетевых приложений (Глейзер Дж.)

Многопользовательские игры. Разработка сетевых приложений: Сетевые многопользовательские игры — это многомиллиардный бизнес, привлекающий десятки миллионов...

24 01 2021 19:28:33

Eclipse

Eclipse — бесплатная IDE модульных кроссплатформенных приложений. В первую очередь служит для разработки расширений, в чем и заключается главное её преимущ...

23 01 2021 20:21:37

Отображение масштабируемой карты с горячими точками в C#

Создание масштабируемой карты с горячими точками на удивление легко, хотя получить правильные детали немного сложно. Программа отображает карту в нескольки...

22 01 2021 18:27:22

Что такое ключевое слово instanceof в Java?

Java instanceof - это ключевое слово. Это двоичный оператор, используемый для проверки, является ли объект (экземпляр) подтипом данного типа. Он возвращает...

21 01 2021 4:19:15

Разница между HashSet и HashMap в Java

Как следует из названий, HashMap является ассоциативной Map, а HashSet - это просто Set. Но они совершенно разные конструкции. HashMap - это реализация инт...

20 01 2021 11:44:28

Метод Substring() в Java

Подстрока является частью строки. Метод String substring() Java String возвращает новый строковый объект из данной строки. Синтаксис String str = "Java Str...

19 01 2021 15:25:28

Выполнять бинарное усиление контраста интерактивно в C#

Пример Выполнение бинарного усиления контрастности на образ в C# выполняет бинарное усиление контрастности, устанавливая каждый пиксель на черный или белый...

18 01 2021 20:37:42

Преобразование между длинными и короткими именами файлов в C#

Вы можете использовать функцию API GetShortPathName для преобразования от длинного к коротким именам файлов. Следующий код объявляет функцию API. Следующий...

17 01 2021 4:43:25

Как задать размер и положение другого приложения в C#

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

16 01 2021 3:25:43

Класс FileReader в Java

FileReader - это характерно-ориентированный класс, который используется для обработки файлов в Java. Он предназначен для чтения потоков символов. Один симв...

15 01 2021 19:47:40

Используйте код WPF для отображения индексов и надстроек в C#

В сообщении Отображение индексов и надстроек в текстовом блоке WPF в C# < / a> Я упомянул, что вы можете создавать индексы и надстрочные индексы в коде WPF...

14 01 2021 5:10:22

Hello World! Занимательное программирование ( Картер Сэнд, Уоррен Сэнд )

Привет! Любишь компьютерные игрушки? А хочешь попробовать написать что-нибудь сам? Представь, как зауважают тебя друзья, когда ты покажешь им игру своей со...

13 01 2021 23:53:27

Как создать документ Word в C#

В этом примере показано, как заставить C# создать документ Word. Сначала откройте диалоговое окно « Добавить ссылки». На вкладке COM выберите « Библиотека об...

12 01 2021 0:24:31

Ошибка компиляции "Can not Find Symbol" в Java

Ошибки « Не удается найти символ» обычно возникают, когда вы пытаетесь ссылаться на необъявленную переменную в коде. Ошибка « Не удается найти символ» означа...

11 01 2021 7:49:39

Как вы отлаживаете программу на Python?

Python имеет отладчик, который доступен как модуль под названием pdb. Он поддерживает установку условных точек останова, одновременное переключение по исхо...

10 01 2021 13:58:33


Parse error: syntax error, unexpected ',' in /home/users/9/9165884745/domains/flash-mx.ru/lessons/926.php on line 69