Поделиться через


Graphics.DrawImageAbort Делегат

Определение

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

public: delegate bool Graphics::DrawImageAbort(IntPtr callbackdata);
public delegate bool Graphics.DrawImageAbort(IntPtr callbackdata);
[System.Runtime.InteropServices.ComVisible(false)]
public delegate bool Graphics.DrawImageAbort(IntPtr callbackdata);
type Graphics.DrawImageAbort = delegate of nativeint -> bool
[<System.Runtime.InteropServices.ComVisible(false)>]
type Graphics.DrawImageAbort = delegate of nativeint -> bool
Public Delegate Function Graphics.DrawImageAbort(callbackdata As IntPtr) As Boolean 

Параметры

callbackdata
IntPtr

nativeint

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

Возвращаемое значение

Данный метод возвращает значение true, если принимается решение, что метод DrawImage должен преждевременно прекратить выполнение. В противном случае возвращается значение false, указывающее на необходимость продолжения выполнения метода DrawImage.

Атрибуты

Примеры

Этот пример является упрощенной реализацией делегата Graphics.DrawImageAbort . Он просто проверяет, передал ли DrawImage метод данные с помощью параметра callbackdata. (Некоторые DrawImage перегрузки имеют только DrawImageAbort параметр и не передают данных; некоторые перегрузки имеют параметры DrawImageAbort и и callbackdata и могут передавать данные.) Если данные не были переданы, он возвращается true , чтобы сигнализировать вызывающему DrawImage методу о том, что он должен отменить рисование. Если данные были переданы, они возвращаются false в сигнал о том, что рисование должно продолжаться.

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

Private Function DrawImageCallback(callBackData As IntPtr) As Boolean  
     ' Test for call that passes callBackData parameter.  
     If callBackData.Equals(IntPtr.Zero) Then  
         ' If no callBackData passed, abort DrawImage method.  
         Return True  
     Else  
         ' If callBackData passed, continue DrawImage method.  
         Return False  
     End If  
 End Function 'DrawImageCallback  
// Define DrawImageAbort callback method.  
 private bool DrawImageCallback(IntPtr callbackdata)  
 {  
    // Test for call that passes callBackData parameter.  
    if(callbackdata==IntPtr.Zero)  
    {  
       // If no callbackdata passed, cancel DrawImage method.  
       return true;  
    }  
    else  
    {  
       // If callbackdata passed, continue DrawImage method.  
       return false;  
    }  
 }  

Комментарии

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

Во время выполнения соответствующие DrawImage перегрузки часто вызывают этот метод обратного вызова, чтобы узнать, следует ли прекратить рисование указанного изображения или продолжить рисование изображения. Метод обратного Graphics.DrawImageAbort вызова может определить, следует ли продолжить, на основе выбранного алгоритма, включенного в него, при необходимости используя данные, передаваемые ему параметром callbackdata. Например, алгоритм может определить, было ли изображение прокручено с экрана, и сообщить методу об отмене DrawImage , чтобы остановить рисование.

Пользовательское объявление этого метода обработки событий должно иметь те же параметры, что и объявление делегата Graphics.DrawImageAbort .

Методы расширения

GetMethodInfo(Delegate)

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

Применяется к