質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Q&A

解決済

3回答

7782閲覧

VisualStudio,Windowsフォームプロジェクト,デスクトップマスコットについて

Yuki1521

総合スコア24

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

0グッド

0クリップ

投稿2017/08/28 04:20

編集2017/08/28 05:31

前回もにてる質問をしたのですが、
直したところ新しいエラーが出たので質問させていただきます。

こちらの記事にかかれている内容を順番に進んで、
最後のコードを入力する部分で困ってます。

//Program.cs using System; using System.Drawing; using System.Windows.Forms; namespace NewPro //名前変更から変えました。 { public partial class Form1 : Form { string path; private int mouseX; private int mouseY; public Form1() { InitializeComponent(); //背景透過 this.TransparencyKey = BackColor; //手前表示 this.TopMost = !this.TopMost; } private void Form1_Load(object sender, EventArgs e) { //パスの指定 path = @"Resources\Player.png"; //自分の作った.pngのファイル名に変えました。 show(path); } //画像を表示する private void show(string path) { //フォームの境界線をなくす this.FormBorderStyle = FormBorderStyle.None; //フォームのサイズ変更 size_change(@path); //背景画像を指定する this.BackgroundImage = Image.FromFile(@path); } //ウィンドウの大きさを画像の大きさに変更 private void size_change(string path) { //元画像の縦横サイズを調べる System.Drawing.Bitmap bmpSrc = new System.Drawing.Bitmap(@path); int width = bmpSrc.Width; int height = bmpSrc.Height; //ウィンドウのサイズを変更 this.Size = new Size(width, height); } //マウスドラッグ移動処理 private void Form1_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { this.mouseX = e.X; this.mouseY = e.Y; } } private void Form1_MouseMove(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { this.Left += e.X - mouseX; this.Top += e.Y - mouseY; } } } }

エラー

CS0111 (型'Form1'は'.ctor'と呼ばれるメンバーを同じパラメーターの型で既に定義しています)

どなたか解決できる方お願いします....

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/08/28 05:22

前のスレッドと同じエラー "CS0103 現在のコンテキストに'initializeComponent'という名前は存在しません" というエラーも出ていて、前からなにも進展してないようですけど。何故前のスレッドを解決済みにしてしまったのですか? スレッドの乱立は避けていただきたいのですが。
Yuki1521

2017/08/28 05:29

すみません。CS0103は解決です。訂正します。
guest

回答3

0

ベストアンサー

.ctor というのは IL レベルでのコンストラクターの名前なので(以下の記事参照)、C# のソースコードを探しても見つかりません。

小ネタ 隠しメンバー
http://ufcpp.net/blog/2016/12/tipsimplicitmembers/

エラーメッセージ "型'Form1'は'.ctor'と呼ばれるメンバーを同じパラメーターの型で既に定義しています" は同じシグネチャを持つコンストラクタが 2 重に定義されていると言ってます。

例えば、以下のようなことをすると 2 つ目の Form1 の下に波線が出て、そこにマウスのカーソルを持ってくると上のエラーメッセージが出ます。

そういうのがないか探してみてください。

namespace WindowsFormsApplication1 { public partial class Form1 : Form { private DataGridView dataGridView1 = new DataGridView(); private BindingSource bindingSource1 = new BindingSource(); List<DataSample> list = new List<DataSample> { new DataSample() { 文字 = "AAA", 数字 = 1 }, new DataSample() { 文字 = "BBB", 数字 = 2 }, new DataSample() { 文字 = "CCC", 数字 = 3 } }; public Form1() { InitializeComponent(); this.Load += Form1_Load; this.Controls.Add(dataGridView1); bindingSource1.DataSource = list; dataGridView1.DataSource = bindingSource1; } public Form1() // ここでエラーが出る { } // ・・・中略・・・ } }

投稿2017/08/28 06:37

編集2017/08/28 07:14
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yuki1521

2017/08/28 08:32

わかりました。 確認してみます。 ありがとうございます。
Yuki1521

2017/08/28 08:44

見つかりました。 別.csにForm1がそれぞれ1つずつありましたが何をすればいいのかわからないです.... 今、Program.csとForm1.csを編集していて、 Form1.csでは、僕が参照した愛希さんのサイトで、Loadやmouse_Upなどがあり、 Program.csでは記事最後に書かれているコードを入力しました。 僕的にこの時点で操作を誤っている(例えば.csを間違えている等で)気がするのですが、 Form1.csでLoadやMouse_Upなどのイベント、 Program.csでは記事最後のコードを入力。 で正しいのでしょうか? 長文失礼しました....
退会済みユーザー

退会済みユーザー

2017/08/28 08:56

> Program.csでは記事最後に書かれているコードを入力しました。 「記事最後に書かれているコード」ってなんですか? 何にせよ Program.cs は、今回参考にしているサイトの記事のプログラムを作るだけなら、自動生成された Program.cs のコードには一切触ってはいけません。 記事に載っていたコードが Form1.cs になるはずです。 Form1.Designer.cs, Program.cs は自動生成されたままにして試してみてください。
Yuki1521

2017/08/28 09:18

できました! ありがとうございました!
guest

0

.ctor はコンストラクタの内部名みたいなものです。
Form1を別な部分でも定義している状態になっていませんでしょうか?

よくわからないのであれば、現在のプロジェクトをいじるのではなく、
再度1からプロジェクトを作り直される方がよいと思います。

投稿2017/08/28 06:10

mituha

総合スコア385

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yuki1521

2017/08/28 08:31

わかりました。 探してみます。 ありがとうございます。
guest

0

確認依頼
エラーの".ctor"をプログラムの中で検索はすることはできませんか?

投稿2017/08/28 05:39

RED_CAT

総合スコア59

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問