Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Диалог-компонент с кнопками Да, Нет, Отмена

Delphi , Программа и Интерфейс , Диалоги и Фреймы

Диалог-компонент с кнопками Да, Нет, Отмена

Автор: Святослав
WEB-сайт: http://delphibase.endimus.com

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Диалог с кнопками Yes, No, Cancel (компонент).
Работает примерно так же как TDialog (для удобства).

TYesOrNoDialog.ShowNoButton - показывать ли кнопку No.
TYesOrNoDialog.ShowCancelButton - показывать ли кнопку Cancel.
TYesOrNoDialog.Caption - заголовок диалгоа.
TYesOrNoDialog.Text - текст диалога.
function TYesOrNoDialog.Execute:Integer - показывает
диалог и возвращает значение MessageBox'a

Зависимости: Windows, Messages, SysUtils, Classes, Dialogs, Forms;
Автор:       Святослав, lisin@asicdesign.ru, ICQ:138752432, Saint Petersburg
Copyright:   (C) NetBreaker666[AWD]<SP666>@Svjatoslav_Lisin - т.е. я сам
Дата:        11 августа 2002 г.
***************************************************** }

unit YesOrNoDialog;

interface

uses
  Windows, Messages, SysUtils, Classes, Dialogs, Forms;

type
  TYesOrNoDialog = class(TComponent)
  private
    { Private declarations }
    _OnEx: TNotifyEvent;
    __SNO: Boolean;
    __SC: Boolean;
    _Y, _N, _C: Boolean;
    _Caption, _Text: string;
    procedure SetNo(S: Boolean);
    procedure SetCancel(S: Boolean);
  protected
    { Protected declarations }

  public
    { Public declarations }
    property Yes: Boolean read _Y;
    property No: Boolean read _N;
    property Cancel: Boolean read _C;

  published
    { Published declarations }
    property ShowNoButton: Boolean read __SNO write SetNo;
    property ShowCancelButton: Boolean read __SC write SetCancel;
    property Caption: string read _Caption write _Caption;
    property Text: string read _Text write _Text;
    property OnExecute: TNotifyEvent read _OnEx write _OnEx;
    function Execute: Integer;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('NetBreakers', [TYesOrNoDialog]);
end;
//Voen secret.
// 2301900

function TYesOrNoDialog.Execute: Integer;
var
  Hn: THandle;
begin
  Hn := Application.Handle;
  if __SNO and __SC then
  begin
    Result := MessageBox(Hn, PChar(text), PChar(Caption), MB_YESNOCANCEL);
    _Y := (Result = 6) or (Result = 1);
    _N := Result = 7;
    _C := REsult = 2;
    Exit;
  end;
  if __SNO then
  begin
    Result := MessageBox(Hn, PChar(text), PChar(Caption), MB_YESNO);
    _Y := (Result = 6) or (Result = 1);
    _N := Result = 7;
    _C := REsult = 2;
    Exit;
  end;
  if __SC then
  begin
    Result := MessageBox(Hn, PChar(text), PChar(Caption), MB_OKCANCEL);
    _Y := (Result = 6) or (Result = 1);
    _N := Result = 7;
    _C := REsult = 2;
    Exit;
  end;
  Result := MessageBox(Hn, PChar(text), PChar(Caption), MB_OK);
  _Y := (Result = 6) or (Result = 1);
  _N := Result = 7;
  _C := Result = 2;

end;

procedure TYesOrNoDialog.SetNo(S: Boolean);
begin
  __SNO := S;
end;

procedure TYesOrNoDialog.SetCancel(S: Boolean);
begin
  __SC := S;
end;

end.

Статья Диалог-компонент с кнопками Да, Нет, Отмена раздела Программа и Интерфейс Диалоги и Фреймы может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Диалоги и Фреймы ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100
19.04.2024 17:39:16/0.033735990524292/0