Windows XP SP2にVisual J# 2005 Express Editionをインストールして使用しています。
今まで、J2SE 5.0を使用していて、GUIの部分はSwingで書いていたのですが、J#に移行したいと思っています。
J#はSwingを一部サポートしているのですが、JTextPaneが使えないので、その部分だけ、J#のSystem.Windows.Forms.FormとSystem.Windows.Forms.RichTextBoxを使って作り替えようと思っています。そこで、java.awt.Frameにjava.awt.Buttonを配置してそのボタンが押されたときにFormを表示させたいのですが、Form.Show()すると表示されたFormがきちんと表示されず、フリーズしてしまいます。
以下に、ソースコードを載せますので、問題点を指摘していただけたら幸いです。
import System.Windows.Forms.Form;
import System.Windows.Forms.RichTextBox;
import System.Drawing.*;
import System.ComponentModel.*;
import java.awt.*;
import java.awt.event.*;
class test implements ActionListener{
Frame frame;
Form f;
RichTextBox tb;
Button b;
IContainer components;
void testGUI(){
this.b=new Button("test");
this.b.addActionListener(this);
this.tb=new RichTextBox();
this.f=new Form();
this.f.get_Controls().Add(this.tb);
this.f.set_Name("Form1");
this.f.set_Text("Form1");
this.frame=new Frame();
this.frame.setSize(100,100);
this.frame.add(this.b);
this.frame.show();
}
public static void main(String[] args){
test2 t2=new test2();
t2.testGUI();
}
private void f_Load(Object sender, System.EventArgs e){}
public void actionPerformed(ActionEvent ae){
if(ae.getSource()==this.b){
this.f.Show();
}
}
}
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
コードを見ましたが、これ、.netのFormにAWTのButtonを組み込もうとしてませんか? .netのコンポーネントとAWTなどpure Javaコンポーネントを混ぜて使うことはできないと思いますよ。
また.netのコンポーネントにjava.awt.eventのイベントを組み込もうとしたりしていませんか? これも無理でしょう。.netとpure JavaのGUIライブラリは全く別物ですから両者を混ぜて使うことはできません。まずは.netかAWTかどちらか一方だけを使うように書き直してみてください。
この回答への補足
> コードを見ましたが、これ、.netのFormにAWTのButtonを組み込も
> うとしてませんか?
> .netのコンポーネントにjava.awt.eventのイベントを組み込もう
> としたりしていませんか?
いいえ、コードの通りAWTと.NETはそれぞれ分離させてあり、混ぜてはいません。さすがに混ぜてしまうとコンパイル自体が通らないので・・・。
また、その混同をさけるためにimportで.netのFormとRichTextBoxを明示させています。
今回の質問をMSDN Forum Visual J# GeneralにポストしたところVisual Studioの開発チームの方から返事があり、J#のバグであることが判明しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- ビデオカード・サウンドカード DellのPC(xp)に、サウンドカードドライバ(内蔵)をインストールしたい。 1 2023/07/31 11:32
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- VPN 何これ 1 2022/04/19 01:32
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- 英語 下記の英文の日本語訳をお願いします。 1 2023/03/02 10:01
- 英語 下記の英文を日本語に訳して、その意味を教えてください。 1 2023/03/09 14:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「例外 *** は対応する try 文...
-
生年月日と今日の日付から年齢...
-
eclipseに記述したjavaファイル...
-
Java での グローバルIP取得
-
文字列を数式に
-
ColabでのPytorchのエラー
-
Javaを使ってデジタル時計を作...
-
干支の計算で。。。
-
Selenium IDEでexportしたコー...
-
(急募)JavaカレンダーをGUI可に...
-
python OpenPyXLを使って出力結...
-
文字サイズが可変のラベル
-
jFrameを使って複数の画面を生...
-
【JAVAエラー】互換性のない型...
-
System.err. printlnとSystem.o...
-
C言語のポインターに関する警告
-
VBAで配列の計算
-
[JAVA]try 内の変数を外で!?
-
Javaで改行などが出来ないのです。
-
ORA-01858: 数値を指定する箇所...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
eclipseに記述したjavaファイル...
-
「例外 *** は対応する try 文...
-
ColabでのPytorchのエラー
-
Javaを使ってデジタル時計を作...
-
<forEach> 内で供給された "ite...
-
文字列を数式に
-
importするには java.io.*; imp...
-
python OpenPyXLを使って出力結...
-
Selenium IDEでexportしたコー...
-
シャットダウンフックが呼ばれない
-
Java3Dで横置き円筒体の円筒中...
-
Javaで常駐するソフトを作って...
-
生年月日と今日の日付から年齢...
-
Javaを使用して定時送信をしたい
-
干支の計算で。。。
-
Java での グローバルIP取得
-
GridBagLayoutについての質問
-
ファイル名を動的に生成したい
-
HTMLでのTableタグデータ取得方法
-
importとextendsの用い方の違い...
おすすめ情報