使用言語:c#
環境:Windows
Windows Forms アプリを Visual Studio 2022 でフレームワークを .NET Framework 4.8 で作っています
作成しているexeソフト画像

実現したいこと
計算結果に表示されている数字(テキストボックスに数字を入れて計算ボタンを押すと計算結果に表示するようにしています)をもとに右側のリストボックスから選び適応ボタンを押すと、計算結果に反映されるといった具合にしたいです。リストボックスの文字は個別で数字を持っていて、適応ボタンを押すと計算結果*2倍や0.5倍という具合です。
例:s:100(計算結果)だとする。リストボックスのA2017 は2なので適応をクリックでs:200になる。S45cは0.5なので、適応ボタンを押すとs:50になる。
現状
計算結果から参照した数字をどう引き抜けばよいのかわからないです。
もともとは計算結果の変数を移動すればいいのでは。と考えていたのですがc#は変数を別のオブジェクトから変数をもってこれないということを知り、詰まってしまいました。
質問まとめ
1,リストボックスの文字に個別に数字を持たせるやり方、
2,リストボックスの数字をもとに適応ボタンを押すと、計算結果に反映させるには
上記2つご教示お願い致します。
コード いらない部分は省いています。仮に作っているので変数は適当です。申し訳ないです。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;は namespace WindowsFormsApp3 { public partial class form1 : Form を public form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // リストボックスに表示されている文字コード listBox1.Items.Add("A2017"); listBox1.Items.Add("S45c"); listBox1.Items.Add("sus304"); } private void button3_Click(object sender, EventArgs e) { //周速の下のテキストボックスからaに代入 int a = Convert.ToInt32(textBox1.Text); //工具径の下のテキストボックスからbに代入 int b = Convert.ToInt32(textBox3.Text); //cに計算結果を代入 double c = (1000 * a) / (3.14 * b); //cを整数にした値をxkkに代入 int xkk = (int)c; //計算結果をラベル1に表示(画面左下の計算結果というTextに) label1.Text = Convert.ToString(xkk); } private void button1_Click(object sender, EventArgs e) { //適応ボタンです。画面右下。ここをクリックすると画面左下の計算結果(xkk)の値にリストボックスの数値をかけて計算したい。 //リストボックスの文字コードに数値を割り振る int A2017 = 2; double s45c = 0.5; //画面左下の計算結果の値を引っ張ってくる int hkhkj = Convert.ToInt32(textBox1.Text); //画面左下の計算結果*2(リストボックスの数値) int hosei = hkhkj* A2017; label1.Text = Convert.ToString(hosei); } } }
あなたのいう計算結果とはどれのことでしょうか。
問題が見えません
周速のテキストボックスと工具径のテキストボックスを計算させた値が計算結果です。
提示のコードのどれに当たるんでしょう
何を何で作っているかを書きましょう。(例: Windows Forms アプリを Visual Studio 2022 でフレームワークを .NET Framework 4.8 で作っています・・・とか)
コードに出てくる TextBox, Button, Label のどれが画像のどれに該当するのか教えてください。そして画像のどれに何を入力して、どのように操作すると、求める結果がどのように計算されるのかの数式と、計算結果がどれに表示されるのか教えてください。
不慣れで申し訳ないです。お手数をおかけしました。
コメントで詳細に書きました。
求める結果の式は、(周速(a)*1000)/ (3.14*工具径(b)= s:計算結果
画面みぎのリストボックスの文字を選択して計算すると s:計算結果*2(A2017)という具合です。
この結果を画面左下の計算結果に上書きされて計算されます。
まだ上段しかコードを書いていなく、わかりにくくなってしまいました。
申し訳ないです。。
質問者さん、その後無言ですが、回答したのでそれに対するフィードバックを返してください。役に立った/立たなかったぐらいはすぐに返せるのでは? 役に立たなかったならどこがダメかを書くとより期待に近い回答が出てくるかも。とにかく無言は NG です。
二度目のお願い:
質問者さん、その後無言ですが、回答したのでそれに対するフィードバックを返してください。役に立った/立たなかったぐらいはすぐに返せるのでは? 役に立たなかったならどこがダメかを書くとより期待に近い回答が出てくるかも。とにかく無言は NG です。
SurferOnWww 様
回答いただきましてありがとうございます。
また、返信遅くなりまして申し訳ございません。
早速ですが、結論から言うとまだ解決に時間を要しています。
当方初心者でして、専門用語が多いため調べながら引き続き解決していこうとおもいます。
調べても分からないところがあったらそのままにしておかないで質問してください。
回答に載せたサンプルコードは、TextBox, Button, ListBox, Label をデザイン画面で必要分ドラッグ&ドロップしてボタンのイベントハンドラを設定すれば動きますので試してみると良いと思います。
