ScrollBarでRGB値を調節

解決


message  2007-01-29 18:49:14  No: 24652  IP: 192.*.*.*

ScrollBar3つで、RGB値を調整するというようにしてるのですが、エラーがでます。ScrollBarのMaxは255、Minは0となっています。
内容はこれです。


procedure TForm1.ScrollBar1Change(Sender: TObject);
var
  i1,i2,i3:integer;
begin
  //パネルの位置を変数に代入
  i1:=scrollbar1.Position;
  i2:=scrollbar2.Position;
  i3:=scrollbar3.Position;

  //パネルの色を設定
  panel1.color:=RGB(i1,i2,i3);    //←ここです。

  //ラベルに値を代入
  label4.Caption:=inttostr(i1);
  label5.Caption:=inttostr(i2);
  label6.Caption:=inttostr(i3);
end;

end.

[Pascal エラー] RGB.pas(46): E2029 '.' が必要な場所に '(' があります

これを全部まねたつもりなんですけど・・・。
http://kakinotane.s7.xrea.com/delphi/d2/s004.html

編集 削除
ウォレス  2007-01-29 20:57:15  No: 24653  IP: 192.*.*.*

私の環境ではエラーは出ませんでしたよ〜。

BDS2006 WinXP SP2

編集 削除
自前環境依存  2007-01-29 21:41:34  No: 24654  IP: 192.*.*.*

>panel1.color:=RGB(i1,i2,i3);    //←ここです。

>[Pascal エラー] RGB.pas(46): E2029 '.' が必要な場所に '(' があります

これは、「usesした自前のRGBユニットを呼び出すのネ」とコンパイラが認識してるということ。
WinAPI(RGBマクロ)を呼出したいのなら、
Windows.RGB();

編集 削除
message  2007-01-30 08:57:45  No: 24655  IP: 192.*.*.*

ありがとうございます。
Panel1.Color:=Windows.RGB(i1.i2.i3);
でOKでした。
でもなんでエラーになってしまったのか・・・。

編集 削除
もにゃ  2007-01-30 10:12:00  No: 24656  IP: 192.*.*.*

ファイル名がRGB.pasだからでしょ。
ファイル命名規則を調べたほうが他人にソース見せたとき恥かかなくてすみますよ。

編集 削除
message  2007-01-30 14:07:42  No: 24657  IP: 192.*.*.*

もにゃさんの指摘どおりでした。
今後気をつけます(>_<)

編集 削除