Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi verschiedene groubindex-eigenschaften automatisch einstellen (https://www.delphipraxis.net/59590-verschiedene-groubindex-eigenschaften-automatisch-einstellen.html)

konda 25. Dez 2005 11:47


verschiedene groubindex-eigenschaften automatisch einstellen
 
hallo
ich will nen programm programmieren, wo es unheimlich viele speedbuttons gibt. nun hab ich das problem das ich für jeden button einen zu den anderen verschiedenen groupindex einstellen muss(das soll so ne art minesweeper werden). da das bei 30 oder mehr buttons nervig ist wollt ich beim formcreate-ereignis für jeden groupindex mit nem zufallsgenerator einstellen und mit ner repeat schleife prüfen ob vielleicht 2 groupindexe gleich sind. das ist aber ein hammerteil programmcode geworden. geht das irgendwie einfacher? :wall:

Der_Unwissende 25. Dez 2005 12:00

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Hi,
äh mal eine ganz dumme Frage, warum zählst du nicht von 1 immer rauf? SpeedButton1.GroupIndex = 1, SpeedButton2.GroupIndex = 2,...

Gruß Der Unwissende

konda 25. Dez 2005 18:30

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Zitat:

Zitat von Der_Unwissende
Hi,
äh mal eine ganz dumme Frage, warum zählst du nicht von 1 immer rauf? SpeedButton1.GroupIndex = 1, SpeedButton2.GroupIndex = 2,...

Gruß Der Unwissende

ich hab aber keine lust dazu und will das der programmcode das erledigt. :pale:

Nightshade 25. Dez 2005 18:41

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Nimm BitBtn's die brauchen keinen Groupindex.

Delphi-Quellcode:
implementation

{$R *.dfm}

uses Buttons;

procedure TForm1.FormCreate(Sender: TObject);
const
  SPALTEN = 15;
  ZEILEN = 15;

var
  Button : TBitBtn;
  x,y : integer;
begin
  for x := 0 to SPALTEN - 1 do begin
    for y := 0 to ZEILEN - 1 do begin
      Button := TBitBtn.Create(self);
      Button.Parent := Scrollbox1;
      Button.Caption := 'X';
      Button.Width := 32;
      Button.Height := 32;
      Button.Top := Y * 32;
      Button.Left := X * 32;
      Button.OnClick := ButtonClick;
      Button.Name := 'Button' + intToStr(x) + '_' + inttostr(Y);
    end;
  end;
end;

procedure TForm1.ButtonClick(Sender : TObject);
begin
  // do something...
end;

Der_Unwissende 25. Dez 2005 18:45

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Zitat:

Zitat von Nightshade
Nimm BitBtn's die brauchen keinen Groupindex.

Aber die hätten nicht die Eigenschaft down, denke die wird gebraucht wenn der Groupindex unterschiedlich sein muss.


Zitat:

Zitat von konda
ich hab aber keine lust dazu und will das der programmcode das erledigt. :pale:

Meinte ja auch im Code
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
  Button : TSpeedButton;
  i : Integer;
begin
  for i := 0 to AnzahlDerSpeedButton - 1 do
    begin
      Button := TSpeedButton.Create;
      Button.GroupIndex := i;
      ....
    end;
end;

konda 25. Dez 2005 19:02

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Zitat:

Zitat von Der_Unwissende
Zitat:

Zitat von Nightshade
Nimm BitBtn's die brauchen keinen Groupindex.

Aber die hätten nicht die Eigenschaft down, denke die wird gebraucht wenn der Groupindex unterschiedlich ...

Das klappt bei mir nicht. bei tspeedbutton.create sag der compiler das nicht genügend parameter vorhanden sind. ich als anfänger hab keine ahnung was er will. :?:

dahead 25. Dez 2005 19:19

Re: verschiedene groubindex-eigenschaften automatisch einste
 
dann kuck doch mal in der hilfe von delphi.

falls du eine neuere version hast, kannst du auch mal mit der maus zwischen die klammern von TSpeedButton.Create(hier) gehen. dann blendet dir delphi via tooltip ein, was für einen parameter es haben möchte.

meistens ist das der sogenannte Parent. in deinem fall kannst du hier wahrscheinlich "Self" oder "Form1" eintragen.

Der_Unwissende 25. Dez 2005 19:38

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Ja, du solltest natürlich dann auch noch die Position der Buttons anpassen, die Größe, ... (alles was du setzen möchtest) und dann müsstest du die wohl auch noch auf das Formular einfügen (guck mal unter den Methoden von TForm oder so, da gibt es etwas wie InsertControl).

konda 25. Dez 2005 20:11

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Zitat:

Zitat von dahead
meistens ist das der sogenannte Parent. in deinem fall kannst du hier wahrscheinlich "Self" oder "Form1" eintragen.

mit dem form1-eintrag hat alles super geklappt. :thumb:

konda 26. Dez 2005 16:59

Re: verschiedene groubindex-eigenschaften automatisch einste
 
Zitat:

Zitat von Der_Unwissende
Zitat:

Zitat von Nightshade
Nimm BitBtn's die brauchen keinen Groupindex.

Aber die hätten nicht die Eigenschaft down, denke die wird gebraucht wenn der Groupindex unterschiedlich sein muss.

noch ne frage, kann mir mal jemand den code erklären(der code klappt, ich kapiere ihn aber nicht). :cyclops:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:03 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz