Genial!
Damit sähe das Skript dann so aus:
{
Zwischen die geschweiften Klammern kann der Spickzettel hin, z.B.:
1: SWR, 2: HR, 3: RIAS.
4: NDR, 5: RB; 6: ORF
usw.
}
const
iMax = 15; // Hier die maximale Senderanzahl minus 1 einsetzen.
var
i: integer;
Stream: array[0 .. iMax] of boolean;
procedure SetConnectionEnabled(Index: integer; State: boolean);
begin
Encoder.GetConnections.GetItem(Index).SetEnabled(State);
if State then
ExecuteCommand('BUTTON.' + IntToStr(Index) + ' ON')
else
ExecuteCommand('BUTTON.' + IntToStr(Index) + ' OFF');
end;
begin
for i := 0 to iMax do
case i of
1, 5, 8..12, 14 : // Hier aufzuschaltende Sender durch Kommata getrennt eintragen.
Stream[i] := true;
else
Stream[i] := false;
end;
for i := 0 to iMax do
SetConnectionEnabled(i , Stream[i]);
end.
(Bisher ungetestet. Wer mag es mal ausprobieren? @ELBE-Tom?)
Weiter verkürzte Grüße
TSD
Edit: Komma statt Semikolon im Prozuduraufruf.