تبدیل نوع متغیر ها به هم - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

تبدیل نوع متغیر ها به هم

0 امتیاز

با سلام.من یک فرم دارم... که قراره یک int  در یک تکس باکس وارد شود و بعد در یک label  به نمایش در آورده شود.

وقتی از این کد استفاده می کنم.

a = int.Parse(textBox1.Text);

اولا وقتی تکس باکس خالی رها می شود برنامه ارور می ده و ثانیا وقتی پر می شود موقع نمایش دادن با ارور مواجه می شوم..

برای حل این مشکل باید چی کار کنم؟؟؟

ممنون می شم اگر راهنمایی کنید.

سوال شده تیر 9, 1393  بوسیله ی Sher228 (امتیاز 167)   18 33 44
دوباره تگ گذاری شد تیر 24, 1393 بوسیله ی BlueBlade
سلام برای اینکار من یک کمپوننت نوشتم که کارمو راه میندازه

ایمیلتو بزار تا برات بفرستمش
[email protected]
فقط چه جوری باید از این استفاده کنم؟
برات توضیحاتشو میفرستم
فرستادم برات موفق باشی

2 پاسخ

+1 امتیاز

این شرطو بزار

 if(textbox1.text != "")
a=int.parse(textbox1.text);

 

و برای نمایش در لیبل هم  از کد زیر استفاده کن

 

 Lable1.Text = Convert.Tostring(a);

 

یا از این

Lable1.Text = a.Tostring();

 

مثال :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        int a;
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (textBox1.Text != "")
                a = int.Parse(textBox1.Text);
            
            label1.Text = a.ToString();

            if (textBox1.Text == "")
                label1.Text = "";

        }
    }
}

 

پاسخ داده شده تیر 9, 1393 بوسیله ی daniyaltjm (امتیاز 840)   47 88 103
ویرایش شده تیر 9, 1393 بوسیله ی daniyaltjm
+2 امتیاز

 

لطفا تا آخر بخونین

سلام دوست عزیز
نوع متغیر شما عدد صحیحه بنابرین در هر صورت باید یک مقداری درونش باشه تا بتونین ازش استفاده کنید وگرنه ارور میده. اگر نیاز دارید که برنامه  ارور نده و پیام هم نده یک مقدار پیش فرض در صورت خالی بودن textbox بهش بدین. الان شما قصد این رو دارین که a رو مساوی پوچ قرار بدین، شما میتونین در صورت خالی بودن  تکست باکس  a رو مساوی 0 قرار بدین صفر خالی در اعداد حکم هیچی بودن رو داره.

تو امتحانا هر کی صفر میگیره میگه نخونده بودم هیچی بلد نبودم مخم پوچ بود صفر گرفتم :) 

موفق باشی


            int a;
           
            if(textBox1.Text == "")
               a = 0;
            else 
               a = int.Parse(textBox1.Text);

 

 

به این شکل هم میشه نوشت


 if (textBox1.Text == "")
    { 
        a = 0;   
        label1.Text = "";
    }

 else
    {
       a = int.Parse(textBox1.Text);
       label1.Text = a.ToString();
    }
            

 

ویرایش

دوست عزیز یه اشتباهی شده نوع های دیگه هم  میتونن پوچ باشن یعنی اینکه صفر پوچ نبوده من اشتباه می کردم معذرت،  اما کاربردشو توی محیط ویندوز فرم نمیدونم گفتم بگم مدیون نشم برو به این آدرس آموزش پانزده و دانلود کن ببین

http://www.mehrdadnaderi.com/Amuzesh/IntroductionToCsharp.html

البته بد نیست همه فیلم ها رو ببینی.  

            int? a = null;
            System.Console.WriteLine(a);       //هیچی چاپ نمی کنه

            int? b = null;
            System.Console.WriteLine(b ?? 3);  // سه رو چاپ میکنه 

            int? c = 10;
            System.Console.WriteLine(c ?? 4);  // ده رو چاپ می کنه چون دیگه سی نال نیست

 

 

 

 

 

پاسخ داده شده تیر 9, 1393 بوسیله ی امیدوار (امتیاز 872)   21 63 76
ویرایش شده شهریور 3, 1393 بوسیله ی امیدوار
زمانی که قصد دارید در لیبل مقدار رو نشون بدین حتما مقدار شما باید به رشته تبدیل شه تا label شما اون مقدار رو قبول کنه
دوست عزیز حتما یه سری به اینجا بزن یه اشتباهی تو پاسخم صورت گرفته که در قسمت پایینش اصلاحش کردم
ممنون که خبر دادید،،،لطف کردید
...