クラス作成時に注意する点は?

解決


きゃら@サンデープログラマ  2005-11-22 09:03:33  No: 18851

クラスを初めて作ってみようと思い、
タスクトレイにアイコンを入れるクラスを作ったのですが、
コンパイルエラーになります。助けていただけないでしょうか?(ノД`)
エラー内容は未定義の識別子「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
・・・以下省略


きゃら@サンデープログラマ  2005-11-22 09:08:16  No: 18852

クラスにせず、アプリのソースに盛り込んだ場合は
きちんと動作します。


きゃら@サンデープログラマ  2005-11-22 10:32:52  No: 18853

自己解決しました。
implementation 部の procedure MakeTrayIcon; を
procedure TClass_Tasctray.MakeTrayIcon; としたら正常に動作しました。

お恥ずかしい限りです・・・。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加