Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
64 / 20 / 1
Регистрация: 29.07.2012
Сообщений: 151

Повернуть дисплей монитора на 180 градусов

05.09.2012, 23:22. Показов 3035. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, понадобилось вот развернуть дисплей монитора на 180 градусов.
Так вот думаю есть же какой то api для таких штучек, не подскажите какой? Хотя бы название а там я сам разберусь.
буду очень благодарен за помощь.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.09.2012, 23:22
Ответы с готовыми решениями:

Как можно повернуть изображение на 'n' градусов?
Как можно повернуть изображение на 'n' градусов?

Повернуть текст на 90 градусов при выводе на печать (на принтер) в VB6
Всем привет! Нужна помощь в выводе на печать средствами VB6. Мне нужно располагать строки на странице как горизонтально, так и...

Повернуть матрицу на 180 градусов.
Добрый вечер уважаемые программисты... Помогите решить матрицу, у меня небольшой завал ( Дана квадратная матрица A порядка M....

7
 Аватар для Danila_Bagrov
-12 / 31 / 4
Регистрация: 22.09.2012
Сообщений: 116
22.09.2012, 19:00
если поможет, то вот пример на C# MSDN
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
22.09.2012, 22:03
Цитата Сообщение от brifing Посмотреть сообщение
есть же какой то api для таких штучек, не подскажите какой?
Есть такая штука. Но как говорится в MSDN, это работает только если в драйвере поддерживается стандартный механизм поворота дисплея. Иначе поворот можно осуществить только при помощи утилиты производителя видеокарты ( для того они и пишутся, чтобы юзер пользовался). У меня не поддерживается, но может кому и повезет
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Const DMDO_90 = 1
Const DMDO_180 = 2
Const DMDO_270 = 4
Const ENUM_CURRENT_SETTINGS = -1
Const CCFORMNAME = 32
Const CCDEVICENAME = 32
 
Private Type DEVMODE
dmDeviceName As String * CCDEVICENAME
dmSpecVersion As Integer
dmDriverVersion As Integer
dmSize As Integer
dmDriverExtra As Integer
dmFields As Long
dmOrientation As Integer
dmPaperSize As Integer
dmPaperLength As Integer
dmPaperWidth As Integer
dmScale As Integer
dmCopies As Integer
dmDefaultSource As Integer
dmPrintQuality As Integer
dmColor As Integer
dmDuplex As Integer
dmYResolution As Integer
dmTTOption As Integer
dmCollate As Integer
dmFormName As String * CCFORMNAME
dmUnusedPadding As Integer
dmBitsPerPel As Integer
dmPelsWidth As Long
dmPelsHeight As Long
dmDisplayFlags As Long
dmDisplayFrequency As Long
End Type
 
Private Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As Long, ByVal iModeNum As Long, lpDevMode As Any) As Boolean
Private Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" (lpDevMode As Any, ByVal dwFlags As Long) As Long
Dim OldX As Long, OldY As Long, nDC As Long
Dim DevM As DEVMODE, erg As Long, temp As Long
Private Sub Command1_Click()
DevM.dmSize = Len(DevM)
DevM.dmDriverExtra = 0
erg = EnumDisplaySettings(0&, ENUM_CURRENT_SETTINGS, DevM)
DevM.dmOrientation = DMDO_90
temp = DevM.dmPelsHeight
DevM.dmPelsHeight = DevM.dmPelsWidth
DevM.dmPelsWidth = temp
ret = ChangeDisplaySettings(DevM, 0)
MsgBox ret ' у меня  = -2    Указанный графический режим не поддерживается
End Sub
Ниже даю то, что возвращает эта функция ChangeDisplaySettings
Visual Basic
1
2
3
4
5
6
7
8
9
10
'Функция возвращает следующие значения:
'Значение                                   Описание
'DISP_CHANGE_SUCCESSFUL = 0  Параметры настройки экрана были успешно изменены
'DISP_CHANGE_RESTART = 1     Компьютер нужно перезагрузить, чтобы изменения вступили в силу
'DISP_CHANGE_BADFLAGS = -4   Определен недействительный набор флажков
'DISP_CHANGE_BADPARAM = -5   Определен недопустимый параметр
'DISP_CHANGE_FAILED = -1     Драйвер дисплея не поддерживает указанный графический режим
'DISP_CHANGE_BADMODE = -2    Указанный графический режим не поддерживается
'DISP_CHANGE_NOTUPDATED = -3     Windows NT/2000: Настройки не могут быть записаны в реестр
'
2
64 / 20 / 1
Регистрация: 29.07.2012
Сообщений: 151
22.09.2012, 22:18  [ТС]
Спасибо, правда у меня тоже -2
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
22.09.2012, 22:30
Driver Nvidia 306.23 Windows 7 64-bit (тобишь последний). Полет -2 аналогично.
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
22.09.2012, 22:41
А вот если закомментировать строки, где меняется ширина на высоту
Visual Basic
1
2
3
'temp = DevM.dmPelsHeight
'DevM.dmPelsHeight = DevM.dmPelsWidth
'DevM.dmPelsWidth = temp
И выставить 180 гр
Visual Basic
1
DevM.dmOrientation = DMDO_180
ТО экран мигает, возвращает 0, но поворота не происходит. Видно всё таки драйвер не дает, или назад быстро-быстро возвращает
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
22.09.2012, 22:43
Если интересно, есть консольная утилитка
http://www.entechtaiwan.com/util/irotate.shtm
которой можно задавать параметры (а значит и запускать скрыто через Shell):
Bash
1
2
3
irotate.exe /rotate=90
irotate.exe /rotate=180
irotate.exe /rotate=0
У меня - меняет.
2
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
22.09.2012, 23:06
Цитата Сообщение от Dragokas Посмотреть сообщение
У меня - меняет.
У меня тоже. Видно в MSDN о чем то подобном и говорили
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.09.2012, 23:06
Помогаю со студенческими работами здесь

Повернуть массив на 180 градусов
Повернуть содержимое квадратной матрицы A (размер n × n) по часовой стрелке на 180 градусов, считая центром поворота центр симметрии...

Повернуть матрицу на 180 градусов
Матрицу NxN повернуть (без использования вспомогательных массивов) на 180 градусов.

Повернуть двумерную матрицу на 90 и 180 градусов
2. Вводим с клавиатуры размерности двухмерной матрицы (количество строк и столбцов) целых чисел (знакового целого типа), а также введение...

Повернуть изображение на 180 градусов в PictureBox
Помогите пжлста инвертировать изображение(развернуть на 180 градусов) в picturebox. Есть пикчабокс со вставленным изображением через...

Повернуть матрицу на 90, 180, 270 градусов
Дана квадратная матрица порядка M. Повернуть ее на 90, 180 и 270 градусов в положительном направлении. Нашел вот такой вот код: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru