Я хочу создать приложение java для изменения яркости экрана ноутбука на окнах xp/7. Пожалуйста, помогитеКак изменить яркость экрана ноутбука из приложения java?
ответ
Я не думаю, что стандартный API делает это на Java.
Но, похоже, вы можете сделать это в .NET в окнах. См.: What API call would I use to change brightness of laptop (.NET)?
Вы всегда можете использовать интерфейс JNI для вызова собственного метода, написанного на C++, поэтому это может быть обходным путем.
Как уже отмечалось, официального API не существует. Однако, используя Windows Powershell (который поставляется с окнами, на которые я полагаю, поэтому ничего не нужно скачивать) и WmiSetBrightness, можно создать простую обходную процедуру, которая должна работать на всех ПК с Windows или позже установлена.
Все, что вам нужно сделать, это скопировать этот класс в рабочую область:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BrightnessManager {
public static void setBrightness(int brightness)
throws IOException {
//Creates a powerShell command that will set the brightness to the requested value (0-100), after the requested delay (in milliseconds) has passed.
String s = String.format("$brightness = %d;", brightness)
+ "$delay = 0;"
+ "$myMonitor = Get-WmiObject -Namespace root\\wmi -Class WmiMonitorBrightnessMethods;"
+ "$myMonitor.wmisetbrightness($delay, $brightness)";
String command = "powershell.exe " + s;
// Executing the command
Process powerShellProcess = Runtime.getRuntime().exec(command);
powerShellProcess.getOutputStream().close();
//Report any error messages
String line;
BufferedReader stderr = new BufferedReader(new InputStreamReader(
powerShellProcess.getErrorStream()));
line = stderr.readLine();
if (line != null)
{
System.err.println("Standard Error:");
do
{
System.err.println(line);
} while ((line = stderr.readLine()) != null);
}
stderr.close();
}
}
И затем вызвать
BrightnessManager.setBrightness({brightness});
Где {Яркость} является яркость вы хотите установить отображение экрана в с 0 - наименьшая поддерживаемая яркость, а 100 - самая яркая.
Большое спасибо anquegi за найденный код powershell here, который я адаптировал для выполнения этой команды.
- 1. Как изменить яркость экрана?
- 2. Невозможно изменить яркость экрана
- 3. Как настроить яркость экрана?
- 4. Как изменить яркость экрана в BroadcastReceiver?
- 5. Как изменить яркость экрана при вводе фона
- 6. Как снизить яркость экрана?
- 7. Как изменить яркость экрана на ubuntu 16.04
- 8. Как изменить яркость iphone от приложения
- 9. Программно изменяемая яркость экрана
- 10. Невозможно изменить яркость экрана в приложенииWillTerminate
- 11. Как изменить яркость программно из Lockscreen
- 12. Получить текущую яркость экрана
- 13. Как установить яркость экрана SmartWatch?
- 14. Как получить яркость экрана iphone
- 15. Как затемнить яркость экрана полностью
- 16. Яркость экрана в J2ME
- 17. Установите яркость экрана Android
- 18. Как изменить яркость изображения?
- 19. Как изменить яркость экрана в Mac os x?
- 20. Как изменить яркость?
- 21. Тип экрана Android/Яркость
- 22. Яркость экрана не работает
- 23. Яркость экрана управления в WP7
- 24. Как изменить яркость основного экрана телефона в Android?
- 25. iPhone: Как мы можем программно изменить яркость экрана?
- 26. Как настроить яркость экрана внутри приложения для Android Локально
- 27. Можно ли настроить яркость экрана из Сервиса?
- 28. Windows: Как изменить яркость подсветки монитора
- 29. Как изменить цветовую схему по умолчанию для ноутбука ipython?
- 30. Отключить автоматическую яркость внутри приложения
К сожалению, это не work.It дает эту ошибку на Windows, '10-> Стандартная ошибка: Get-WmiObject: Не поддерживается В строке: 1 знак: 42 + ... myMonitor = Get-WmiObject -Namespace корень \ WMI -Класс WmiMonitorBright ... + ' – GOXR3PLUS
Resume-> ' + CategoryInfo: InvalidOperation: (:) [Get-WmiObject], ManagementException + FullyQualifiedErrorId: GetWMIManagementException, Microsoft.PowerShell.Commands.GetWmiObjectCommand Вы не можете вызов метода в нулевом выражении. На линии: 1 char: 111 + ... torBrightnessMethods; $ myMonitor.wmisetbrightness ($ delay, $ brightness) + ~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: InvalidOperation: (:) [], RuntimeException + FullyQualifiedErrorId: InvokeMethodOnNull' – GOXR3PLUS