madExcept, проверка состояния флажка в пользовательском помощнике перед добавлением дополнительных файлов в отчет

Я изменил send-assistant madExcept с новым флажком. Если использование отметит этот флажок, я хочу отправить дополнительные вложения с отчетом об ошибке (копия файлов данных пользователя).

Как я могу проверить, если пользователь установил флажок?

С уважением, -Вегар

2 ответа

Решение

Я решил эту проблему с помощью Мэдши на forum.madshi.net.

Мое решение включает в себя TMadExceptionHandler-компонент и событие OnExceptionAction.

procedure TMainForm.MadExceptionHandler1ExceptAction(action: TExceptAction; 
  const exceptIntf: IMEException; var handled: Boolean);
var
  cbSendData: INVCheckbox;
  assistant: INVAssistant;
begin
  if action = eaSendBugReport2 then
  begin
    assistant := exceptIntf.GetAssistant(exceptIntf.SendAssistant);
    cbSendData := assistant.Forms[1].nvCheckBox('SendDataChk');

    exceptIntf.AdditionalAttachments.Clear;
    if (cbSendData.Checked) then
    begin
      //Add data files as attachments...
    end;
  end;
end;

Остается одна небольшая вещь - это включить / отключить флажок в особых случаях. Мадши говорит мне, что правильный способ сделать это - зарегистрировать обратный вызов actionhandler у помощника и проверить наличие флажка nvaItemEvent-action. Я еще не пробовал это.

-Vegar

Я не знаю madExcept, но если исходным кодом является Delphi (что видно из ваших тегов), вы можете проверить это так:

begin
  if CheckBox1.Checked then
    AttachDataFile;
end;

CheckBox1 - это имя, которое вы указали для элемента управления, когда вы поместили его в редактор форм. Если вы не знаете имя, выделите его мышью и посмотрите на инспектор объектов для свойства Name.

Другие вопросы по тегам