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

Отображение точек между системами координат в C#

Рекомендуем: Узнай Китай!
eda2480d

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

Например, эта программа использует метод DrawSmiley для рисования смайлинки в области (-1, -1) - (1, 1), а затем использует преобразования для отображения этой области в четыре разных места в форме. Для рисования приложений, таких как этот, часто проще рисовать объекты с центром в начале координат, а затем перемещать результат. Для других приложений, таких как картографические, графические и графические программы, часто проще рисовать в другом пространстве координат (например, долгота / широта или годы / продажи), а затем преобразовывать результат в место, где вы хотите, чтобы рисунок отображался.

См. код, чтобы узнать, как работает метод DrawSmiley. Это в основном просто и использует Graphics методы, такие как FillEllipse, DrawEllipse и DrawArc, чтобы нарисовать смайлик.

Один неочевидный аспект DrawSmiley заключается в том, что преобразованные линии преобразуются. Например, предположим, что программа рисует смайлики, масштабируемые в 50 раз. Предварительно определенное перо, такое как Pens.Black, обычно имеет толщину 1, поэтому после масштабирования оно будет иметь ширину 50 пикселей и в результате получается большая черная капля. Масштабируемые ручки могут быть интересными, особенно если вы масштабируете по разным объемам по вертикали и по горизонтали, но это разрушает многие рисунки, включая этот.

Решение состоит в том, чтобы сделать пользовательское перо с толщиной 0. Специальное значение 0 заставляет программу рисовать ширину линии 1, независимо от того, как она масштабируется. См. Код для остальных деталей метода DrawSmiley.

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

Существует два основных подхода к определению преобразования, которое вы хотите использовать. Во-первых, вы можете использовать методы класса Graphics, такие как ResetTransform, ScaleTransform и RotateTransform, чтобы построить преобразование на один шаг в то время.

Второй подход заключается в создании объекта Matrix, представляющего преобразование. Внутренний класс Graphics использует объекты Matrix, чтобы представлять комбинацию преобразований в любом случае, поэтому этот подход просто пропускает шаги построения Matrix, вызывая ScaleTransform, RotateTransform и другие методы и напрямую строит Matrix. Это было бы трудно, за исключением того, что класс Matrix предоставляет очень полезный конструктор, который позволяет сопоставить прямоугольник с параллелограммом. В этом примере код отображает прямоугольник (-1, -1) - (1, 1) на параллелограмм в форме. Конструктор класса Matrix генерирует соответствующий объект Matrix для масштабирования и правильного перевода прямоугольника.

Следующий код показывает, как программа демонстрирует оба этих метода.

Python

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

Далее код использует метод ScaleTransform для масштабирования чертежа в 50 раз по горизонтали и по вертикали. Затем он использует TranslateTransform для перевода масштабированного результата на 60 пикселей вправо и 60 пикселей вниз. Обратите внимание на конечный параметр Append. Это делает объект Graphics применением трансляции после масштабирования. По какой-то сумасшедшей причине поведение по умолчанию заключается в добавлении новых преобразований до существующих, поэтому последующие преобразования будут выполняться ранее. Я не знаю, почему Microsoft сделал это по умолчанию, но так вы обходите это поведение.

После создания преобразований код просто вызывает DrawSmiley, и чертеж автоматически масштабируется и переводится в нужную позицию.

Далее код демонстрирует второй подход: построение Matrix. Он создает RectangleF, представляющий область в координатах рисования (часто называемую «мировыми координатами»), где будет нарисован смайлик. Затем он создает массив из трех структур PointF, указывающий, где на объекте Graphics должен отображаться прямоугольник. Этот массив определяет верхний левый, верхний правый и нижний левый углы параллелограмма в этом порядке, а конструктор Matrix определяет, где четвертый угол должен быть неявным. (Было бы более гибким, если бы вы могли сопоставить параллелограмм с параллелограммом вместо прямоугольника на параллелограмме. На самом деле было бы еще лучше, если бы вы могли сопоставить произвольный четырехугольник другому четырехугольник. Но это не так, как это работает. )

Программа использует исходный прямоугольник и параллелограмм назначения для создания объекта Matrix и устанавливает объект Graphics объекта Transform для этого объекта. Это определяет всю трансформацию. Он заменяет любое предыдущее преобразование, поэтому вам не нужно использовать ResetTransform.

Затем код снова смазывает смайлик, и он сопоставляется с новым пунктом назначения.

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

Код заканчивается рисунком с параллелограммом, который имеет «верхний» и «нижний» углы с значениями Y, поэтому параллелограмм перевернут. В результате получается обратное смайлик. Этот метод особенно полезен, когда вы рисуете нечто вроде графика, где координаты Y данных возрастают вверх, но координаты формы увеличиваются вниз.

Источник: http://csharphelper.com/blog/2014/11/map-points-between-coordinate-systems-in-c/



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

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

Нарисуйте линии с торцевыми крышками в C#

Свойства Pen класса StartCap и EndCap определяют, как линия рисует свои концевые колпачки. В этом примере используется следующий код для создания образцов...

06 05 2021 23:36:10

Как работает тернарный оператор на Python?

Тернарные операторы более широко известны как условные выражения в Python, которые оценивают что-то, основанное на истинном состоянии или нет. Он просто по...

05 05 2021 14:37:23

Treeset в Java

Класс TreeSet реализует интерфейс Set, поддерживаемый TreeMap. Он создает коллекцию, которая использует дерево для хранения. Объекты хранятся в отсортирова...

04 05 2021 7:28:11

Разрешить ограниченный выбор CheckBox в C#

Обычно пользователь может проверить или снять флажок CheckBox независимо от других параметров. Это сообщение показывает, как вы можете разрешить ограниченн...

03 05 2021 19:47:21

Сравните скорости LINQ для разных подходов в C#

В этом примере сравниваются скорости LINQ при использовании LINQ различными способами. Чтобы найти минимальные и максимальные значения X в List & lt; Point...

02 05 2021 18:21:28

Как сделать стрельбу в Unity 2D с пулом объектов

В сегодняшнем уроке мы разберем как сделать стрельбу в Unity 2D с использованием пула объектов (Object pool) для реализации этого менее затратно....

01 05 2021 10:57:17

Что такое тег noscript?

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

30 04 2021 22:42:58

Как нарисовать пронумерованные круги и сохранить их в файлах на C#

Иногда мне нужно рисовать пронумерованные круги для размещения на изображениях, которые я буду использовать в книгах или статьях. Эта программа позволяет м...

29 04 2021 10:26:38

Добавление «свойства расширения» в классы в C#

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

28 04 2021 8:53:55

Класс BufferedReader в Java

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

27 04 2021 15:46:42

Отправлять распечатку непосредственно на конкретный принтер в C#

Код устанавливает имя принтера, а затем вызывает метод PrintDocument объекта Print для немедленной отправки распечатки на этот принтер. Источник: http://cs...

26 04 2021 18:41:13

Что такое компилятор Just-In-Time (JIT) в Java?

Компилятор Just-In-Time (JIT) является компонентом JRE (Java Runtime Environment), который повышает производительность приложений Java во время выполнения....

25 04 2021 11:37:15

Самоучитель Java (Хабибуллин И.Ш)

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

24 04 2021 5:19:45

Как создать выпадающие списки в JavaScript

В раскрывающемся списке содержится список текста, который позволяет пользователю сайта выбирать из параметров. HTML Выберите опции Источник Получить выбран...

23 04 2021 22:33:34

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

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

22 04 2021 4:14:41

Java для чайников (Барри Берд)

Java — современный объектно-ориентированный язык программирования. Программа, написанная на Java, способна выполняться практически на любом компьютере. Зна...

21 04 2021 3:11:34

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

Пример Создание профилей PictureBoxes в C# устанавливает Region из двух элементов управления PictureBox для круговых областей. Это хорошо работает в этом п...

20 04 2021 13:36:54

Найти предков класса в C#

Пример Найти классы, реализующие интерфейс или являющиеся потомками данного класса в C# , показывает, как найти список классов, которые являются потомками...

19 04 2021 19:56:34

Разработка веб-приложений с помощью PHP и MySQL (Люк Веллинг, Лора Томсон)

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

18 04 2021 4:35:48

Сделайте кнопку с картинкой под ней в C#

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

17 04 2021 4:17:36

Изучаем JavaScript (Моррисон М.)

Вы готовы сделать шаг вперед в своей практике веб-программирования и перейти от верстки в HTML и CSS к созданию полноценных динамических страниц? Тогда при...

16 04 2021 0:38:24

События флеш-кликов в C#

Если кнопка запускает длинную задачу, вы, вероятно, не хотите, чтобы пользователь мог снова нажать кнопку (или, возможно, ничего в приложении), пока задача...

15 04 2021 2:30:29

Изучаем HTML, XHTML и CSS (Эрик Фримен, Элизабет Робсон)

Устали от чтения книг по HTML, которые понятны только специалистам в этой области? Тогда самое время взять в руки новое издание " Изучаем HTML, XHTML и CSS....

14 04 2021 0:27:57

1С:Предприятие 8.0: Приемы программирования (Всеволод Несвижский)

Книга 1 С: Предприятие 8.0: Приемы программирования полностью построена на реальных примерах и задачах, решаемых 1 С-программистами в повседневной работе. Пре...

13 04 2021 21:59:28

1С:Предприятие. Бухгалтерский учет. Секреты работы (Наталья Рязанцева)

Книга "1 С: Предприятие. Бухгалтерский учет. Секреты работы" посвящена системе программ ведения автоматизированного учета на предприятиях, в организациях и у...

12 04 2021 18:38:33

Открытие нового окна в JavaScript

Вы можете использовать JavaScript для запуска нового окна. Метод window.open(), который позволяет открыть новое окно браузера без перехода от текущей стран...

11 04 2021 4:16:16

Как аннотации работают на Java?

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

10 04 2021 6:49:54

Обучение мобильной разработке на Delphi (В. Леонов)

Основной целью данной книги является наглядная демонстрация приёмов создания программ в одной из самых популярных и доступных сред разработки Delphi/C++Bui...

09 04 2021 12:36:46

Легко нарисовать повернутый текст на форме в C#

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

08 04 2021 3:11:28

Создание и отображение HTML в C#

Этот пример фактически выполняет две вещи: он делает элемент управления WebBrowser перемещаться по домашней странице пользователя и показывает, как создава...

07 04 2021 15:38:49

Как определить тип экземпляра и наследование в Python

Метод isinstance() проверяет, является ли объект экземпляром класса, тогда как метод issubclass() запрашивает, является ли один класс подклассом другого кл...

06 04 2021 11:35:19

Преобразовать строку в Integer в C#

В этой статье мы напишем программу C# для преобразования строки в Integer с использованием метода Convert.ToInt32() Вывод: 6245...

05 04 2021 7:54:59

Создайте библиотеку кнопок XAML в C#

В этом примере показано, как можно создать библиотеку кнопок XAML с возможностью повторного использования в WPF. Пример Создание шаблона кнопки WPF в C# ис...

04 04 2021 12:24:12

Функции в Bash

Функции в Bash - отличный способ повторного использования кода.  В этом разделе нашего учебного руководства по Bash вы узнаете, как они работают и что вы можете с ними делать....

03 04 2021 15:36:40

Обновление DataTable, привязанное к DataGridView в C#

Когда пользователь нажимает кнопку « Добавить», программа примера выполняет следующий код. В этом коде отображается диалоговое окно, в котором вы можете вве...

02 04 2021 6:31:16

1С-программирование как дважды два. Самоучитель (Михайлов Сергей)

Книга "1 С-программирование как дважды два. Самоучитель" основана на личном опыте предпринимательской деятельности автора в сфере 1 С-программирования. Начин...

01 04 2021 9:33:56

Как выделить строку DataGridView, находящуюся под мышью в C#

Недавно кто-то спросил меня, как изменить стиль строки под мышью в элементе управления DataGridView. Этот пример делает это. Когда программа запускается, с...

31 03 2021 13:18:59

Добавление метода расширения в класс Graphics в C#

По какой-то странной причине метод DrawRectangle класса Graphics не может принимать параметр RectangleF в качестве параметра. Он может принимать значения R...

30 03 2021 19:14:25

Класс FileReader в Java

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

29 03 2021 22:19:15

Понимание символа "@" в C#

Символ @ может быть довольно запутанным для некоторых разработчиков C. Я даже знал некоторых, кто программировал довольно долгое время, но у которых все ещ...

28 03 2021 12:10:20

Разница между памятью Stack and Heap в Java

Модель Java Heap и Stack Memory определяет, как и когда разные потоки могут видеть значения, записанные в общие переменные другими потоками, и как синхрони...

27 03 2021 7:46:47

Отображать индексы и надписи в RichTextBox в C#, версия 2

В следующих примерах показано, как отображать индексы и верхние индексы в RichTextBox. Это были довольно простые примеры, и Судир Шривастава обнаружил ситу...

26 03 2021 12:35:38

Генерация случайных полигонов в C#

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

25 03 2021 23:25:12

Глобальные переменные в JavaScript

Как и другие языки программирования, JavaScript также имеет локальные и глобальные переменные. В JavaScript объекты и функции также являются переменными. О...

24 03 2021 9:13:47

Turbo Pascal: Учебник (С. А. Немнюгин)

Цель данного учебного курса - обучить программированию на Паскале, точнее, на том его расширении, которое было создано фирмой Borland и называется Турбо Па...

23 03 2021 12:45:31

Язык программирования C# (Хейлсберг А. 2012)

Перед вами — четвертое издание главной книги по языку C#, написанной легендой программирования — Андерсом Хейлсбергом, архитектором C#, Delphi и Turbo Pasc...

22 03 2021 11:12:55

Нарисуйте водяной знак в C#

Пример Использование ColorMatrix для добавления водяного знака к изображению на C# показывает один способ добавления водяного знака к изображению. В этом п...

21 03 2021 7:28:52

Класс Java HashSet

Класс HashSet расширяет AbstractSet и реализует заданный интерфейс. Набор представляет собой набор, который не содержит повторяющихся элементов и элементы...

20 03 2021 3:35:13

Алгоритмы и программы на Turbo Pascal. Учебный курс (Ю. Федоренко)

Книга " Алгоритмы и программы на Turbo Pascal. Учебный курс" предназначена для самостоятельного изучения одного из самых популярных языков программирования....

19 03 2021 18:38:42

Бухгалтерский и налоговый учет в 1С:Бухгалтерии 8 (С.Харитонов)

В пособии " Бухгалтерский и налоговый учет в 1 С: Бухгалтерии 8" рассматривается технология ведения бухгалтерского и налогового учета в программе "1 С: Бухгалте...

18 03 2021 17:28:38

Что такое объектная модель браузера в JavaScript

Модель объекта браузера (BOM) - это соглашение, специфичное для браузера, относящееся ко всем объектам, открываемым веб-браузером. Когда браузер анализируе...

17 03 2021 9:40:57

Пространство имен в C#

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

16 03 2021 12:35:53

Использование EXIF для ориентации изображения на C#

Пример Прочитайте ориентацию EXIF файла изображения данные на C# показывают, как читать информацию о ориентации EXIF с изображения. Используя эту информаци...

15 03 2021 23:56:40

Нарисуйте кривую с несколькими цветами в C#

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

14 03 2021 7:52:59

Управление видео с помощью WPF MediaElement в C#

В этом примере показано, как вы можете управлять видео MP4 с помощью элемента управления MediaElement WPF. Элемент управления обеспечивает удивительно крас...

13 03 2021 14:25:49

Введение в потоки Thread в Java

В чем разница между Reader и InputStream в Java Процесс представляет собой экземпляр выполняемой компьютерной программы. Процесс может выполняться процессо...

12 03 2021 22:42:38

Циклы while и do..while в Java

Мы используем многократные действия для решения проблем повседневной жизни. В программировании мы также используем многократные действия для решения пробле...

11 03 2021 1:46:46

Дата и время в Python

Python предоставляет разработчику несколько инструментов для работы с датой и временем . Стандартные библиотеки содержат такие модули, как: Дата и время Вр...

10 03 2021 13:58:18

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

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

09 03 2021 23:29:31

JavaScript. Подробное руководство (Дэвид Флэнаган)

Пятое издание бестселлера "Javascript. Подробное руководство" полностью обновлено. Рассматриваются взаимодействие с протоколом HTTP и применение технологии...

08 03 2021 13:18:10

jQuery Mobile. Разработка приложений для смартфонов и планшетов (Максимилиано Фиртман)

Рассмотрено использование фреймворка jQuery Mobile для создания гибких мультиплатформенных приложений для различных мобильных устройств (iPad, Kindle Fire,...

07 03 2021 22:49:16

Как объекты становятся пригодными для сбора мусора в Java?

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

06 03 2021 1:24:38

Важные характеристики объектов Python

Все объекты Python имеют уникальный идентификатор. Встроенная функция id() возвращает идентификатор объекта как целое. Это целое число обычно соответствует...

05 03 2021 20:21:21

Использование памяти дисплея в C#

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

04 03 2021 10:49:39

Почему множественное наследование не поддерживается в Java

Это просто устранить двусмысленность, поскольку множественное наследование может вызвать двусмысленность вокруг проблемы Diamond в нескольких сценариях. На...

03 03 2021 8:50:31

Скрыть панель задач и кнопку запуска в C#

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

02 03 2021 17:40:27

JavaScript: логические операторы

  AND оператор: & & OR оператор: || NOT оператор: ! Логические операторы обычно используются с логическими (логическими) значениями. Когда они...

01 03 2021 4:24:15

Создайте 3D-поверхность очень быстро с помощью WPF, XAML и C#

Пример Нарисуйте гладкое 3D-изображение поверхность с WPF, XAML и C# рисует гладкую поверхность, но занимает около 16 секунд на моем компьютере. Пример Соз...

28 02 2021 1:24:55

Воспроизвести мелодии с определенными частотами в C#

В этом примере показано, как вы можете воспроизводить тоны с заданной частотой и продолжительностью. Когда пользователь нажимает кнопку « Воспроизведение»,...

27 02 2021 3:21:54

Является ли Java «pass-by-reference» или «pass-by-value»?

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

26 02 2021 12:56:31

Форматировать текст в RichTextBox в C#

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

25 02 2021 14:21:58

Эффективность использования топлива в разных единицах в C#

Люди в Соединенных Штатах, Канаде, Соединенном Королевстве и некоторых других местах измеряют эффективность использования топлива в милях на галлон. Как и...

24 02 2021 23:38:43

Разница между String и StringBuffer / StringBuilder в Java

Здесь String неизменен, означает, что вы не можете изменить сам объект, но вы можете изменить ссылку на объект, тогда как StringBuffer и StringBuilder явля...

23 02 2021 1:26:13

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

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

22 02 2021 7:18:45

Рисование, перемещение и удаление сегментов линии в C#

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

21 02 2021 8:55:41

Мифы о программировании

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

20 02 2021 22:47:36

Как удалить контекстное меню элемента управления TextBox в C#

Обычно элемент управления TextBox имеет контекстное меню, которое появляется при щелчке правой кнопкой мыши по нему, но что, если вы не хотите этого контек...

19 02 2021 0:14:34

Калькулятор на C#

...

18 02 2021 21:32:32

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

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

17 02 2021 23:38:37

Стандартные исключения в C#

Пример Используйте try блоки блокировки для защиты от непредвиденных ошибок в C# объясняют, как поймать исключение, и вкратце упоминает, что вы можете испо...

16 02 2021 15:25:25

Программирование на Java

Сокет - одна из самых фундаментальных технологий программирования компьютерной сети. Это способ подключения двух узлов в сети для связи друг с другом. Прог...

15 02 2021 6:43:27

Запустите приложение DOS и запишите его вывод в C#

Этот код создает объект ProcessStartInfo для хранения информации о процессе, который он должен запустить. Затем он создает объект Process, устанавливает ег...

14 02 2021 2:15:42

Создайте улучшенный собственный шаблон TabControl в C#

Сообщение Создайте собственный шаблон TabControl в C# показывает, как создать управляемый вкладкой элемент управления вкладками. К сожалению, управление ве...

13 02 2021 17:44:14

Как разделить и объединить строки в C#

В этом примере показано, как использовать методы string для разделения и объединения строк. Метод string класса Split разбивает строку на части, разделенны...

12 02 2021 12:57:48

Как получить IP-адрес в Python

Модуль сокетов в Python обеспечивает доступ к интерфейсу сокетов BSD. Имя socket.gethostbyname (имя хоста) переводит имя хоста в формат адреса IPv4. Адрес...

11 02 2021 5:42:47

Как ClassLoader работает на Java?

Java Classloader является частью JRE (Java Runtime Environment), которая динамически загружает классы Java в JVM (виртуальная машина Java). В частности, Ja...

10 02 2021 14:23:30

Класс Java StringBuilder

Java StringBuilder идентичен StringBuffer, за исключением одного важного различия, которое не синхронизировано, это означает, что он не является потокобезо...

09 02 2021 21:32:50

Основы программирования в Delphi 7 (Н. Б.Культин)

Книга является руководством по программированию в среде Delphi 7. Описывается весь процесс разработки программы: от конструирования диалогового окна до орг...

08 02 2021 2:14:59

Перезапустите диспетчер очереди печати в C#

Время от времени мой компьютер запутывается и думает, что принтер отключен. Это не так уж плохо, за исключением того, что Windows не предоставляет простой...

07 02 2021 4:22:41

Что такое виртуальная машина Java?

Java Virtual Machine (JVM) - это спецификация, предоставляющая среду выполнения, в которой может быть запущен Java-байт-код. Как следует из названия, JVM д...

06 02 2021 10:37:46

Как сделать сохранения в Unity 5 при помощи Newtonsoft.Json

В этом уроке мы разберем как сделать сохранения в Unity 5 при помощи библиотеки Newtonsoft.Json и разберем некоторые её свойства....

05 02 2021 3:36:22

Метод Substring в C#

Метод Substring в строке C#. Класс возвращает новую строку, которая является подстрокой этой строки. Подстрока начинается с указанного заданного индекса и...

04 02 2021 9:41:12

Что такое сборщик мусора в Java?

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

03 02 2021 22:31:40

Отображать данные master-detail в DataGrid в C#

Во время разработки я добавил проект Database.mdb в проект, установил его свойство «Build Action» в « Содержимое» и установил его свойство « Копировать в вых...

02 02 2021 14:24:51

Как найти слово под мышью в элементе управления RichTextBox в C#

Следующий метод WordUnderMouse возвращает слово под мышью в RichTextBox. В коде используется метод RichTextBox управления GetCharIndexFromPosition, чтобы п...

01 02 2021 5:28:34

Статическая синхронизация с нестатической синхронизацией в Java

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

31 01 2021 3:45:34

Сжатие файлов JPG в каталоге в C#

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

30 01 2021 7:59:45

Какова цель класса Runtime и System?

Класс System содержит несколько полезных полей и методов класса. Целью класса System является обеспечение доступа к системным ресурсам. Это последний класс...

29 01 2021 22:45:29

Использование свойства Filter для выбора файлов изображений в C#

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

28 01 2021 17:57:55

Метод Split() в Java

Есть ситуация, когда строки содержат несколько фрагментов информации, тогда нам нужно разбить строку, чтобы извлечь отдельные фрагменты. Строки в Java можн...

27 01 2021 7:48:58

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

Сообщение Используйте исчерпывающий поиск для решить проблему раздела в C# , объясняет проблему раздела и то, как вы можете использовать исчерпывающий поис...

26 01 2021 23:51:51

Что такое ссылки на методы в Java?

Ссылки на методы являются признаком Java 8. Самое большое дополнение в Java8 - это лямбда-выражения. Ссылка на метод - это сокращенный синтаксис выражения...

25 01 2021 0:20:36

Каковы различия между ArrayList и Vector в Java?

Java ArrayList и Vector реализуют интерфейс List и поддерживают порядок вставки. Но между ArrayList и Vector есть некоторые отличия. Java ArrayList и Vecto...

24 01 2021 8:45:52

Объявлять и инициализировать пустые массивы в C#

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

23 01 2021 7:24:21

Как нарисовать улучшенный текст на кривой в C#

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

22 01 2021 12:46:13

Циклы в Java Примеры и синтаксис

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

21 01 2021 19:30:35

Рекурсивно решить проблему Башни Ханоя в C#

Пример Рекурсивно рисуем двоичное дерево в C# использует рекурсию для рисования ветвей дерева. Хороших примеров рекурсии трудно найти, потому что человечес...

20 01 2021 19:59:51

Нарисуйте текст на кривой в C#

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

19 01 2021 7:39:53

Случайный цвет для прокладки Аполлония в C#

Этот пример похож на пример Нарисуйте прокладку Аполлония в C# < / a> за исключением того, что он заполняет круги, которые он рисует со случайными цветами....

18 01 2021 10:17:38

Turbo Pascal: Учебник (С. А. Немнюгин)

Цель данного учебного курса - обучить программированию на Паскале, точнее, на том его расширении, которое было создано фирмой Borland и называется Турбо Па...

17 01 2021 16:45:38

Обеспечить автосохранение в C#

Этот пример расширяет пример scribble (наиболее недавно описанный в post Предоставить отменить и повторить в C# ), поэтому он предоставляет функцию автомат...

16 01 2021 15:53:33

Что такое литералы в Python?

Литерал - это краткий и легко видимый способ написать значение. Литералы представляют собой возможные варианты примитивных типов для этого языка. Некоторые...

15 01 2021 7:42:43

Заполните эллипс случайными строками в C#

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

14 01 2021 16:41:19

Использование полос прокрутки для выбора цветов RGB и HLS в C#

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

13 01 2021 18:23:38

Нарисуйте закругленные прямоугольники в C#

Библиотека GDI + предоставляет множество методов для рисования фигур, таких как прямоугольники, эллипсы, линии и дуги. К сожалению, он не обеспечивает мето...

12 01 2021 21:12:25

Инициализация ComboBox из перечисления в C#

Часто полезно инициализировать ComboBox из перечисления, чтобы пользователь мог выбрать одно из значений перечисления. Вы можете ввести значение в ComboBox...

11 01 2021 9:44:40

Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript и CSS (Р. Никсон)

Научитесь создавать современные динамические веб-сайты, даже если у вас нет опыта в программировании. Если вы умеете писать статические сайты на HTML, то с...

10 01 2021 15:42:17

Списки клонов и массивы объектов в C#

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

09 01 2021 2:51:12

1С:Предприятие. Практика программирования на платформе V7 (Н. Колпинский)

1 С: Предприятие. Практика программирования на платформе V7  Данные материалы рассчитаны на пользователей, знакомых с интерфейсом «1 С: Предприятия» и имеющих н...

08 01 2021 17:17:58

Hashtable в Java

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

07 01 2021 2:28:14

Сделайте значки приложений приложений Windows Forms на соответствующих размерах в C#

Установка значка формы проста. Просто выберите форму в редакторе форм и установите ее свойство Icon. Windows использует этот значок разными способами. Напр...

06 01 2021 4:19:54

Является ли Monkey patching хорошей практикой программирования?

MonkeyPatch - это часть кода программирования, которая расширяет или изменяет другой код во время выполнения. Это означает, что он вносит изменения в модул...

05 01 2021 2:13:56

Обработка исключений в C#

Что такое исключение? Исключение .NET - это объект, который описывает условие ошибки во время выполнения. Когда возникает условие ошибки во время выполнени...

04 01 2021 12:24:52

Android. Разработка приложений для чайников (Донн Фелкер, Джошуа Доббс)

В наше время миллиарды пользователей носят в кармане портативные устройства, и в половине из них установлена операционная система Android. Даже если вы ник...

03 01 2021 1:26:33

Переход на другую HTML страницу JavaScript

Вы можете перенаправить веб-страницу с помощью JavaScript, используя ряд методов. Если вам нужен скрипт переадресации JavaScript, совместимый с кросс-брауз...

02 01 2021 9:13:55

Рисуем преобразованный текст в C#

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

01 01 2021 2:40:12

Кортеж (Tuple) в Python

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

31 12 2020 13:41:41

Метод Replace() в Java

Метод Java String replace() заменяет все существующие вхождения символа в String другим символом. Синтаксис Замена последовательностей символов Метод Java...

30 12 2020 12:26:44

Получаем размер шрифта в пикселях в C#

Одна странность класса Font заключается в том, что его свойство « Размер» возвращает размер шрифта в единицах, которые использовались для создания шрифта. С...

29 12 2020 16:38:13

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

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

28 12 2020 8:15:51

Запись значений в реестре в C#

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

27 12 2020 21:10:11

Как дать свойства индексатора по умолчанию для класса в C#

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

26 12 2020 6:33:16

Как открыть файл PDF в C#

Во время разработки я добавил в форму элемент WebBrowser. Когда программа запускается, он использует следующий код для открытия PDF-файла в элементе управл...

25 12 2020 2:50:24

Основа для карточной игры в C#

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

24 12 2020 21:29:51

Базовые типы данных Java

В Java, объектах и примитивах есть две основные категории данных. Все члены данных и локальные переменные должны иметь тип данных, который является либо пр...

23 12 2020 4:23:17

Выполнение нескольких действий по умолчанию в C#

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

22 12 2020 17:29:54

Используйте спрайты для анимации нескольких прыгающих мячей в C#

Этот пример аналогичен описанному в сообщении Анимация нескольких подпрыгивающих шары в C# , за исключением того, что использует спрайты для управления шар...

21 12 2020 0:28:49

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

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

20 12 2020 3:18:24

Как использовать Split в Python

Метод Split() в Python возвращает список слов в строке / строке, разделенных строкой разделителя. Разбиение строки Split Метод split() в Python без аргумен...

19 12 2020 16:16:14

Нарисуйте ковер Sierpinski в C#

В этом примере показано, как нарисовать ковер Sierpinski, тип фрактала, известный как прокладка. Должности Нарисуйте прокладку Серпинского в C# и...

18 12 2020 12:28:25

Что такое отказобезопасные и отказоустойчивые итераторы в Java

Неуправляемые итераторы Fail-Fast iterators, возвращенные большинством типов коллекций, не переносят каких-либо структурных изменений в коллекции, итерации...

17 12 2020 9:35:40

Сравниние производительности простых арифметических операций в C#

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

16 12 2020 19:48:54

If, else, case в Bash

В Bash, If утверждения очень полезны.  В этом разделе нашего урока вы узнаете, как вы можете использовать, If, else, elif, case инструкции в ваших сценариях Bash....

15 12 2020 2:56:57

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

В этом примере показана гистограмма, показывающая распределение случайных значений, которые моделируют прокатку двух 6-сторонних кубиков. Во время разработ...

14 12 2020 16:42:14

Сравнение скорости арифметических операций в C#

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

13 12 2020 7:30:35

Расположите форму в нижнем правом углу экрана в C#

Свойство Screen.PrimaryScreen.WorkingArea дает размер рабочей области основного экрана. ( Для получения дополнительной информации см. Получить рабочую облас...

12 12 2020 3:21:51

Распечатайте форму или элемент управления в C#

В этом примере показано, как вы можете распечатать форму или элемент управления в программе на C#. Еще во времена Visual Basic 6 был метод PrintForm. Он пр...

11 12 2020 19:34:43

Глаза, которые следят за мышью в C#

В этом примере используется Timer с именем tmrTick для отслеживания мыши. Его обработчик событий Tick, который показан в следующем коде, обновляет глаза. О...

10 12 2020 23:49:48

Программирование Java для начинающих

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

09 12 2020 23:14:45

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

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

08 12 2020 16:49:14

Еще:
Программирование -1 :: Программирование -2 :: Программирование -3 :: Программирование -4 :: Программирование -5 ::

И сказал Великий Программист:
«После трёх дней без программирования жизнь теряет смысл»