Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.03.2015, 13:19   #21
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
словами сформулировать никак не получается?
проще видео посмотреть т.к там запутано, там вес архива 5мб всего
FleXik вне форума Ответить с цитированием
Старый 11.03.2015, 13:30   #22
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
проще видео посмотреть т.к там запутано, там вес архива 5мб всего
да мне объём без разницы. мне тупо лень.
ну неинтересно мне!
сформулируй словами.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 11.03.2015, 13:39   #23
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

min@y™, там 5 кнопок, это нереально
FleXik вне форума Ответить с цитированием
Старый 11.03.2015, 13:44   #24
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от FleXik Посмотреть сообщение
min@y™, там 5 кнопок, это нереально
ну нарисуй схему логическую. вот типа такой:
Изображения
Тип файла: png 1.png (5.0 Кб, 40 просмотров)
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 11.03.2015, 13:48   #25
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Цитата:
Сообщение от FleXik Посмотреть сообщение
проще видео посмотреть т.к там запутано, там вес архива 5мб всего
Да уж, запутано

Вот
(плохой вариант)
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Button1.Tag := 1;
  Button1.Enabled := False;
  Button2.Enabled := True;
  Button5.Enabled := (Button1.Tag + Button3.Tag) = 2;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Button1.Tag := 0;
  Button1.Enabled := True;
  Button2.Enabled := False;
  Button5.Enabled := False;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  Button3.Tag := 1;
  Button3.Enabled := False;
  Button4.Enabled := True;
  Button5.Enabled := (Button1.Tag + Button3.Tag) = 2;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  Button3.Tag := 0;
  Button3.Enabled := True;
  Button4.Enabled := False;
  Button5.Enabled := False;
end;
Или так
(еще не лучше (: )
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TRubilnik = record
    Sostoyanie: Boolean;
    Vkl: TButton;
    Vikl: TButton;
  end;

  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    GlavnayaKnopka: TButton;
    Memo1: TMemo;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
    PultUpravleniya: array of TRubilnik;
    procedure VklVikl;
    procedure Rubilnik_VKL(Sender: TObject);
    procedure Rubilnik_VIKL(Sender: TObject);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
  i: Integer;
begin
  SetLength (PultUpravleniya, 4);

  PultUpravleniya[0].Sostoyanie := False;
  PultUpravleniya[0].Vkl := Button1;
  PultUpravleniya[0].Vikl := Button2;

  PultUpravleniya[1].Sostoyanie := False;
  PultUpravleniya[1].Vkl := Button3;
  PultUpravleniya[1].Vikl := Button4;

  PultUpravleniya[2].Sostoyanie := False;
  PultUpravleniya[2].Vkl := Button5;
  PultUpravleniya[2].Vikl := Button6;

  PultUpravleniya[3].Sostoyanie := False;
  PultUpravleniya[3].Vkl := Button7;
  PultUpravleniya[3].Vikl := Button8;

  for i := Low(PultUpravleniya) to High(PultUpravleniya) do begin
    PultUpravleniya[i].Vkl .OnClick := Rubilnik_VKL ;
    PultUpravleniya[i].Vikl.OnClick := Rubilnik_VIKL;

    PultUpravleniya[i].Vkl .Tag := i;
    PultUpravleniya[i].Vikl.Tag := i;
  end;

  VklVikl;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  SetLength (PultUpravleniya, 0);
end;

procedure TForm1.Rubilnik_VKL(Sender: TObject);
begin
  PultUpravleniya [TButton(Sender).Tag].Sostoyanie := True;
  VklVikl;
end;

procedure TForm1.Rubilnik_VIKL(Sender: TObject);
begin
  PultUpravleniya [TButton(Sender).Tag].Sostoyanie := False;
  VklVikl;
end;

procedure TForm1.VklVikl;
var
  flag: Boolean;
  i: Integer;
begin
  flag := True;
  for i := Low(PultUpravleniya) to High(PultUpravleniya) do
    with PultUpravleniya[i] do begin
      flag := flag and Sostoyanie;
      Vkl.Enabled := not Sostoyanie;
      Vikl.Enabled := Sostoyanie;
    end;
  GlavnayaKnopka.Enabled := flag;
end;

end.

Последний раз редактировалось Sibedir; 11.03.2015 в 14:18.
Sibedir вне форума Ответить с цитированием
Старый 11.03.2015, 13:52   #26
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Sibedir, спасибо большое =), вот теперь пашет как надо, весы кликнул
FleXik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
События elementhost как для Button ольгаг WPF, UWP, WinRT, XAML 1 20.11.2013 13:34
Как к компаненту button применить pie bulldog5293 Компоненты Delphi 6 06.09.2013 18:33
Как привязать компоненту TComboBox к Button, чтобы при нажатии Button, данные из ComboBox вводились в TstringGrid Marta_ Помощь студентам 2 15.10.2011 01:02
Как остановить выполнение button.onclick? igabenu Общие вопросы Delphi 6 21.01.2011 23:36
Как узнать имя button BuT@JL Общие вопросы Delphi 7 19.08.2009 10:42