Właczanie i wylaczanie guzika

0

Witam ponownie. Przy FormCreate robię, że guzik jesy wyłączony, ustawiam Button.Enabled na false;
I teraz chce zrobić tak, że jak dane pole (Edit1.text) zostanie wypełnione przynajmniej jednym znakiem to Button zmienia sie na True, jak robie w programie głowny, to wywala mi Error'a.

1

No i co mamy wróżyć z fusów dlaczego wywala ci błąd jak nie podałeś nawet linii kodu co tam nasmarowałeś?
W zdarzeniu OnChange Edita wpisz:

procedure TForm1.Edit1Change(Sender: TObject);
begin
  Button1.Enabled:= Length(Edit1.Text) > 0;
end;

PS: guziki to są przy koszuli w programie są przyciski / buttony.

0

A jak bym chcial zrobic, że jest to uzaleznione od np 4 edit'ow? Ze wszystkie 4 musza byc wypelnione?

1

Masz dla 2 dla 4 się domyśl :P
Button1.Enabled:= (Length(Edit1.Text) > 0) and (Length(Edit2.Text) > 0);
Wszystkim editom przypisz to samo zdarzenie OnChange co Edit1 aby nie pisać 4x tego samego.

0

zrobilem podobnie, tylko ja nadawalem bez sensu warunkowi if...dzieki:)
a jeszcze przy okazji, wiesz może jak zablokować zaznaczanie pierwszego wiersza w TStringGrid?

0

Znaczy zaznaczenie czy wybranie?
Bo wybranie to w OnSelectCel:

procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  if ARow = 0 then
  begin
    CanSelect:= False;
    TStringGrid(Sender).Row:= 1; //automatycznie przejscie do nastepnego wiersza (nie musi byc)
  end;
end;

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.