DisplayEvents
Navigation: Programming with ADLX → ADLX Samples → Java Samples
Demontrates how to handle notifications about display change when programming with ADLX.
Sample Path
/Samples/java/DisplayEvents
Java
Code
Java
//// Copyright (c) 2021 - 2025 Advanced Micro Devices, Inc. All rights reserved.////-------------------------------------------------------------------------------------------------
import out.*;
public class mainDisplayEvents {
// load ADLXJavaBind.dll static { try { System.loadLibrary("ADLXJavaBind"); } catch (UnsatisfiedLinkError e) { System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e); System.exit(1); } }
// Get displaylistchanged public static void main(String[] args) {
// Initialize ADLX with ADLXHelper ADLXHelper help = new ADLXHelper(); ADLX_RESULT res = help.Initialize();
if (res == ADLX_RESULT.ADLX_OK) {
// Get system services IADLXSystem sys = help.GetSystemServices();
if (sys != null) { // Get display services SWIGTYPE_p_p_adlx__IADLXDisplayServices s = ADLX.new_displaySerP_Ptr(); res = sys.GetDisplaysServices(s); IADLXDisplayServices displayService = ADLX.displaySerP_Ptr_value(s);
if (res == ADLX_RESULT.ADLX_OK) { // Get display changed handling SWIGTYPE_p_p_adlx__IADLXDisplayChangedHandling ppDisChangeHand = ADLX.new_displayChangeHandlP_Ptr(); res = displayService.GetDisplayChangedHandling(ppDisChangeHand); IADLXDisplayChangedHandling hand = ADLX.displayChangeHandlP_Ptr_value(ppDisChangeHand);
if (res == ADLX_RESULT.ADLX_OK) { // Call back for dislaylistchanged DisplayListCallBack call = new DisplayListCallBack(); hand.AddDisplayListEventListener(call); System.out.println("\n\n Plug or unplug a display within 20 seconds.\n"); try { Thread.currentThread().sleep(20000); } catch (Exception e) { // Exception handling } hand.RemoveDisplayListEventListener(call);
// Release display changed handling interface hand.Release(); }
// Release display services interface displayService.Release(); } } } else { System.out.printf("ADLX helper initialize result: %s\n", res.toString()); }
// ADLX Terminate res = help.Terminate(); System.out.printf("ADLX Terminate: %s\n", res.toString()); }}