クラスを初めて作ってみようと思い、
タスクトレイにアイコンを入れるクラスを作ったのですが、
コンパイルエラーになります。助けていただけないでしょうか?(ノД`)
エラー内容は未定義の識別子「NotifyIcon」と、その構造体が未定義と怒られる。
forwardまたは・・・された「TClass_Tasktray.MakeTrayIcon」が見つかりません
とその他の手続きが見つかりません。というエラーです。
以下ソース(31行目でエラー)
1|unit Class_Tasctray;
2|
3|interface
4|
5|uses
6|windows, Forms, ShellAPI, Messages;
7|
8|const
9|WM_NotifyTasktray = WM_APP + 1 ;
10|
11|type
12|TClass_Tasctray = Class
13|public
14|NotifyIcon: TNotifyIconData;//タスクトレイアイコン用データ
15|constructor Create;
16|procedure MakeTrayIcon;
17|procedure DelTaskIcon;
18|procedure TaskTrayEvent(var Msg : TMsg);
19|message WM_APP;
20|end;
21|
22|implementation
23|
24|constructor TClass_Tasctray.Create;
25|begin
26|end;
27|
28|procedure MakeTrayIcon;//タスクトレイにアイコン作成のイベントハンドラ
29|begin
30|ShowWindow(Application.Handle, SW_HIDE);
31|with NotifyIcon do
・・・以下省略
クラスにせず、アプリのソースに盛り込んだ場合は
きちんと動作します。
自己解決しました。
implementation 部の procedure MakeTrayIcon; を
procedure TClass_Tasctray.MakeTrayIcon; としたら正常に動作しました。
お恥ずかしい限りです・・・。
ツイート | ![]() |