• ベストアンサー

Kylix を使用したプログラムについて教えてください。

SHIMAPEEの回答

  • ベストアンサー
  • SHIMAPEE
  • ベストアンサー率75% (154/203)
回答No.1

pascalのprocedure内で定義した変数はそのprocedure内でしか扱えません。Kylix/Delphiのイベントハンドラは一つのprocedureですから、例え同じForm内であっても別のイベントハンドラ内で定義した変数は扱えません。 別のUnit2-Form2の変数を扱いたいのでしたら、その変数をUnit2のグローバル変数として、あるいはForm2のPublicで定義します。そしてUnit2をusesで指定し、Unit2.あるいはForm2.を付けて参照します。

kou-1206
質問者

お礼

解決しました。 教えていただきありがとうございます。 また、何か分からないことがあったら教えてください。

関連するQ&A

  • Kylix を使用したプログラムについて教えてください。

    開発環境がKylixでのForm1のデータをForm2で使用する記述(方法)を教えてください。 お願いします。 もし、言葉がたらなかったらすいません。

  • フォームを最背面に設定したいのですが・・・

    VisualBasic2008で開発しております。 フォームを常に最背面に表示したく、 http://jeanne.wankuma.com/tips/vb.net/form/bottommost.html で紹介されているような方法を試してみました。 この方法で、フォームを最背面にするという事自体は解決できたのですが、最背面にしたフォームのイベントハンドラが機能しなくなってしまいました。 どうすればイベントハンドラが機能するようになるのでしょうか?

  • kylix3インストールについて

    kylix3インストールについて質問があります まず以下が当方のPCの環境となります ・OS:Linux(Debian 5) kylix3 Professionalを購入し、中に入っていたディスクをPCに入れ 中にあったsetup.shファイルをインストールしていくとエラーが発生し インストールできませんでした いかが自分が行った手順となっています ・コマンドプロンプトを起動 ・管理者モードへ移行 ・ディスクにあるインストールファイルをPCへコピー移動 ・中にあるsetup.shファイルの中身を修正(修正した理由として sh setup.shを実行すると エラーコードが出てしまいできないので調べてみると setup.shファイルの345行目からコメントアウトして新しくテキストを追加しろと書かれていたので行いました) ・bash setup.shをコマンドプロンプト上で実行します ・日本語でインストールしますか?と聞かれますのでyをキーインし、エンターキーを押下 ・すると「Glibcバージョンで失敗 このシステムにglibcを新しいバージョンに更新する必要があります」とでてきてしまいインストールできませんでした ほかのはOKとでていたので大丈夫かと カーネルバージョンとか ちなみにカーネルバージョンは2.2.0 Libjpegバージョンは6.2.0これも失敗とでいます Libgtkバージョンは1.2.0これはOKとでています あとlibX11.soの場所が見つかりませんと出てきてしまい警告でした どうすればインストールできるかよろしくお願いします 当方は最近Linuxを初めて触り始めましたのでよろしくお願いします

  • C#プログラムで、ボタンをショートカットキー付きで作りたいのですが、方

    C#プログラムで、ボタンをショートカットキー付きで作りたいのですが、方法が分からず困っています。 方法が分からない点は、クリックイベントとKeyDownイベントに対して同一のイベントハンドラーにする方法です。サンプルがあったらご提示頂けないでしょうか?

  • Form間の値の渡し方

    1つのForm上のコマンドボタンで別のFormを表示、そこで変数に値を入れ、そのFormを閉じ、元のFormでその変数を使いたいのですが、どうもうまくいきません。 実施したやり方は、一方のFormの宣言領域で、”Public abc As String”を宣言、両方のFormの(変数に値を入れた方と変数を使う方の)プロシージャーの宣言では引数として(abc As String)と記述しました。 因みに、両プロシージャーともイベントプロシージャーです。何か基本的なことができていないのだとは思いますが、どなたか教えていただけませんか?よろしくお願いします。

  • eventの概念が理解できません

    こんにちは。オブジェクト志向でVB、C#を学んでいます。デリゲートを理解してeventについて学んでいますが、よく理解できません。 イベントとは、「あるアクションが発生したことを自動的に通知するための仕組み」と本にあります。 さらに、「送信側オブジェクトのイベント(と呼ばれるクラスメンバーに、受信側のイベントハンドラー(と呼ばれるメソッド)を登録します。」とあります。 下記が本に載っているコードです。 私が理解できているのは、 ・戻り値が無し、引数をとらないメソッドを参照するオブジェクト。MyEventHandlerというデリゲートを宣言 ・戻り値が無し、引数をとらないメソッドを参照するオブジェクト。SomeEvent変数を宣言 ・MyEvent型のevt変数の宣言 理解できないのは、 evt.SomeEvent += Handler;。何をやっているかわかりません。 ここをわかりやすくお教え頂けませんでしょうか? using System; //MyEventHandler型を宣言。ここは理解できます。 delegate void MyEventHandler(); class MyEvent{ //イベントの宣言。EventHandler型の変数、SomeEvent。 public event MyEventHandler SomeEvent; public void Fire(){ if(SomeEvent !=null) SomeEvent(); } } class EventDemo{ static void Handler(){ //←イベントハンドラー Console.WriteLine("Event occurred"); } static void Main(){ MyEvent evt = new MyEvent(); evt.SomeEvent += Handler; evt.Fire(); } } また、もう一点お教え下さい。フォーム上のボタンをクリックした時に、メッセージを表示するようなイベントはどのような形で動いているのでしょうか? senderはイベントの発生元のオブジェクトがそのまま入っていて、eはイベントの補足情報が入っているのは理解しました。 ボタンをクリックした時に、ボタンクラスから何らかの情報が送られてきて、それをsenderとeで受取ると思うのですが、これのどこにeventとデリゲートが関わってくるのでしょうか? 何かモヤモヤしてeventがわかりません。 宜しくお願い致します。 private void btn_Click(object sender, EventArgs e) { messagebox.show("hello"); }

  • SSTABでのKEYDOWNイベント

    VB6・SP5で開発を行っています。 FormのKEYDOWNイベントでPageUp・PageDownの押下の際に、 SSTAB上のアクティブなTABをずらす処理を行おうとしています。 問題はSSTAB上にフォーカスが移った直後だけ、 KEYDOWNイベントが2回実行されてしまうというものです。 KEYUPについても同様でした。 このような現象をご存知の方、 対処方法をお教えくださる方がいらっしゃいましたらよろしくお願いします。 ちなみにモジュール変数等のフラグはなるべく使用したくありません。

  • ブラウザを使用しないでプログラムから変数を送る方法

    通常、 ・GETの場合 <a href=http://www.xxx.co.jp?a=1>submit</a> ・POSTの場合 <form method=post action="xxx.cgi"> <input type=hidden name=a value=1> <input type=submit value=submit> </form> のなどのHTMLでクリックまたはSUBMITボタンを押すとその特定のURLのWWWサーバーに変数が送られますよね。 これをブラウザを使用せず、サーバーのプログラム(perl)を使用して、そのプログラムを実行すると プログラムで指定した特定のURLのwwwサーバー(port 80)に変数を送る方法書き方を教えて下さい。 GETの場合、POSTの場合それぞれ教えてください。 通常、ブラウザがしていることを、プログラムでしたいと思っています。 よろしくお願いします

    • ベストアンサー
    • CGI
  • イベントハンドラが取得できない VC++ MFC

    おはようございます(><) VC++.NETで開発を行っています。 MFCを使って開発をしています。 CDialogを継承したCmyDialogでOnLButtonDownのイベントがとれません。 OnLButtonDownのイベントを使いたかったのですが 自動でイベントを設定するプロパティのメニュー(雷のマークみたいなもの)にイベントがなかったので 自分でCmyDialog::と書いたらリストの中に OnLButtonDown( UINT nFlags,CPoint point)がでたので 定義に追加、イベントの記述を追加しました。 雷マークで作ったイベントのコードには // TODO : ここにコントロール通知ハンドラ コードを追加します。 と自動で記述され、ブレイクポイントを設定するとそこで止まるのですが 私が記述したLButtonDownのイベントでは実行してもブレイクポイントで止まりません。 他のイベントと比べて違うのは BEGIN_MESSAGE_MAP(CmyDialog, CDialog)の中に ON_NOTIFY(LVN_COLUMNCLICK, IDC_LIST1, OnLvnColumnclickList1) のように イベントハンドラ名、リソース名?、イベント名 と自動で記述があります。 ここを追加すればいいのかなと思いましたが 左クリックに対応するイベントハンドラ名が分かりません。 問題解決に有効な情報をお持ちの方 お力をお貸しください。 よろしくお願いします(><)

  • Linuxでゲーム開発

    Linuxで(具体的にはLindows)ゲームを作りたいと考えています。 LinuxはツールがいろいろあってVBのようなGUIの統合開発環境がないようなのですが、何か良いツールはないものでしょうか? VBのようなツールが欲しいと思うのですが、なければそれに近いようなものでも構いません。 kylixを勉強しようかなあーとも思いましたが、どうも初心者向けの書籍がなく、インストールしたままです。WideStudio本も買いましたが、どうもrubyやC++などが必要のようで・・・。 Javaっていう話もありますが、それならWindowsでもいいじゃんっ!って思えてしまってどうも踏み込めません。 みなさん、どうやってゲーム開発などをされているんでしょうね??? QTを使うためにGLADE入れて、gtk+やGCC・・・・んーーいろいろと使えるのがLinuxの良いところですけども、GUIアプリの統合開発環境ともなると、ううううううううううむ、です。_| ̄|○ ちょっとゲーム開発したいだけなのに。。。 いろいろありすぎ!!(×_×)