PDA

View Full Version : مبتدی: کمک برای ساخت ماشین حساب



mojtaba_kz
چهارشنبه 17 اسفند 1390, 20:02 عصر
سلام دوستان برنامه نویس

من قرار یه ماشین حساب تحت وب درست کنم ولی هر کاری می کنم نمیشه

فایل رو آپلود می کنم دوستان کمک کنن

فعلا برای جمع دارم تست می کنم

با یک تکس باکس
http://wdl.persiangig.com/pages/download/?dl=http://ahvaztak.persiangig.com/Other/WebApplication1.zip

http://ahvaztak.persiangig.com/Other/WebApplication1.zip

VB.NET

تحت وب

فکر نمی کنم زیاد سخت باشه برای شما
امشب منتظرم

reza69
چهارشنبه 17 اسفند 1390, 21:45 عصر
سلام دوستان برنامه نویس
من قرار یه ماشین حساب تحت وب درست کنم ولی هر کاری می کنم نمیشه
فایل رو آپلود می کنم دوستان کمک کنن
فعلا برای جمع دارم تست می کنم
با یک تکس باکس
http://wdl.persiangig.com/pages/download/?dl=http://ahvaztak.persiangig.com/Other/WebApplication1.zip
http://ahvaztak.persiangig.com/Other/WebApplication1.zip
VB.NET تحت وب فکر نمی کنم زیاد سخت باشه برای شما
امشب منتظرم
دوست من این برنامت کلا مشگل داره این یه تیکه کدت چه معنایی میده؟
TextBox1.Text = TextBox1.Text + "1"
عددی که تو تکست باکس مینویسی با رشته 1 جمع میکنه بعد میریزه باز تو تکست باکس؟ این برنامتم باز نمیشه.

reza69
چهارشنبه 17 اسفند 1390, 23:03 عصر
ببخشید این قطعه کدت درست بود فقط چرا رو یه تکست باکس عملیاتتو انجام میدی؟
مشگل اینجاست که وقتی میخوایم یک عدد رو انتخاب کنیم عدد وارد اون تکست باکسی بشه که رویداد فکوس داخلشه.
من رو این مورد مشگل دارم. بقیه ی عملیات سادس. خودتون که میدونید؟ مثلا برای جمع: lblresault=textbox1.text + textbox2.text

mojtaba_kz
پنج شنبه 18 اسفند 1390, 17:27 عصر
ببخشید این قطعه کدت درست بود فقط چرا رو یه تکست باکس عملیاتتو انجام میدی؟
مشگل اینجاست که وقتی میخوایم یک عدد رو انتخاب کنیم عدد وارد اون تکست باکسی بشه که رویداد فکوس داخلشه.
من رو این مورد مشگل دارم. بقیه ی عملیات سادس. خودتون که میدونید؟ مثلا برای جمع: lblresault=textbox1.text + textbox2.text

این که چرا داخله یه تکس باکس باید باشه چیزی هست که استاد گفته:لبخندساده:

باید با استفاده از چند متغییر بتونیم این کار رو بکنیم....

tam2145
پنج شنبه 18 اسفند 1390, 21:28 عصر
سلام ای دوست !!
الوعده وفا !!
خوب برای اینکه بهتر راهنماییت کنم بگو :
1 - استاد گفته از چه کنترل هایی در برنامه استفاده کنی ؟؟ در کل بگو که استاد چه چیز هایی را مجاز کرده ؟؟؟
2 - آیا می خواهی توی textbox بنویسی 1+6 و بعد خود تکست باکس عدد 7 را نمایش بده ؟؟

Hybrid
پنج شنبه 18 اسفند 1390, 21:59 عصر
بعدش من یک دلیل رو خوب نگرفتم ، چرا باید تحت وب باشه؟؟؟


نمیشه App باشه تا همین الان واست بنویسمش؟؟

mojtaba_kz
پنج شنبه 18 اسفند 1390, 22:15 عصر
سلام ای دوست !!
الوعده وفا !!
خوب برای اینکه بهتر راهنماییت کنم بگو :
1 - استاد گفته از چه کنترل هایی در برنامه استفاده کنی ؟؟ در کل بگو که استاد چه چیز هایی را مجاز کرده ؟؟؟
2 - آیا می خواهی توی textbox بنویسی 1+6 و بعد خود تکست باکس عدد 7 را نمایش بده ؟؟


سلام ای دوست !!
الوعده وفا !!
خوب برای اینکه بهتر راهنماییت کنم بگو :
1 - استاد گفته از چه کنترل هایی در برنامه استفاده کنی ؟؟ در کل بگو که استاد چه چیز هایی را مجاز کرده ؟؟؟
2 - آیا می خواهی توی textbox بنویسی 1+6 و بعد خود تکست باکس عدد 7 را نمایش بده ؟؟

علیکم السلام دوست عزیز ،

فرض می کنیم که من می خواهم مقدار 10 را با 5 جمع کنم (10+5)
عملیاتی که صورت می گیرد

کاربر بر روی دکمه 1 و 0 کلیک می کند و عدد 10 در تکست باکس ظاهر می شود
در گام دوم کاربر بر روی عملگر جمع(+) کلیک می کند پس از کلیک عملگر + در یک متغیر رشته ای رفته و مقدار تکست باکس هم (که مقدار 10 باشد) در متغیر ی مانند A انتقال پیدا می کند و درون تکس باکس خالی می شود و برنامه آماده دریافت عدد دوم می شود پس از وارد کردن عدد دوم با فشردن دکمه = مقدار تکس باکس درون یک متغیر مانند b انتقال پیدا می کند و در پایان مقدار a+b می شود و در متغیری مانند C قرار می گیرد و در نهایت مقدار c را تکس باکس می ریزیم.

توضیحات کاملی بود؟


در دکمه مربوط به جمع


a = Val(TextBox1.Text)

op =



"+"


در دکمه مربوط به =


b = Val(TextBox1.Text)





SelectCase op





Case"+"

c = a + b





EndSelect

TextBox1.Text = c







در دکمه مربوط به وارد کردن اعداد برای نمونه 1


TextBox1.Text = TextBox1.Text +



"1"


متغیر هایی که تعریف کردم


Public








Class_Default





Inherits System.Web.UI.Page





Dim a AsInteger





Dim b AsInteger





Dim c AsInteger





Dim op AsString




ببخشید دیر شد...:ناراحت:
دوست عزیز تشکر

Hybrid
پنج شنبه 18 اسفند 1390, 22:16 عصر
دوست عزیز جوابه من رو ندادین.

tam2145
پنج شنبه 18 اسفند 1390, 22:24 عصر
سلام !!
من که نفهمیدم چی به چی شد ؟؟
شما با این پست آخرتون می گید که می خواهید یک ماشین حساب استاندارد بدهید ولی در پست قبلی گفتید باید توی تکست باکس ؟؟
حالا کدومش هست ؟؟
ماشین حساب استاندارد یا توی تکست باکس ؟؟؟

tam2145
پنج شنبه 18 اسفند 1390, 22:47 عصر
سلام آقا مجتبی !!
فکر کنم خواب شما را برده یا سیل برده که اصلا جواب نمی دهید !!
با این حال من سورس یک ماشین حاب استاندارد را که چهار عمل جمع و تفریق و ضرب و تقسیم را انجام می دهد را برای تحت ویندوز نوشتم که این طور بوش می آد برای تحت وب هم همین هست !!


Public Class Form1
Dim num1, num2, num3 As Decimal
Dim op As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TextBox1.Text += "1"
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text += "2"
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
TextBox1.Text += "3"
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
TextBox1.Text += "4"
End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
TextBox1.Text += "5"
End Sub

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
TextBox1.Text += "6"
End Sub

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
TextBox1.Text += "7"
End Sub

Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
TextBox1.Text += "8"
End Sub

Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
TextBox1.Text += "9"
End Sub

Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click
TextBox1.Text += "0"
End Sub

Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click
TextBox1.Text += "."
End Sub

Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button12.Click
num2 = Val(TextBox1.Text)
Select Case op
Case "-"
num3 = num1 - num2
Case "+"
num3 = num1 + num2
Case "*"
num3 = num1 * num2
Case "/"
num3 = num1 / num2
End Select
TextBox1.Text = Str(num3)
End Sub

Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click
num1 = Val(TextBox1.Text)
TextBox1.Text = ""
Op = "-"
End Sub

Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button14.Click
num1 = Val(TextBox1.Text)
TextBox1.Text = ""
Op = "+"
End Sub

Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click
num1 = Val(TextBox1.Text)
TextBox1.Text = ""
Op = "*"
End Sub

Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click
num1 = Val(TextBox1.Text)
TextBox1.Text = ""
Op = "/"
End Sub
End Class

mojtaba_kz
جمعه 19 اسفند 1390, 18:03 عصر
سلام آقا مجتبی !!
فکر کنم خواب شما را برده یا سیل برده که اصلا جواب نمی دهید !!
با این حال من سورس یک ماشین حاب استاندارد را که چهار عمل جمع و تفریق و ضرب و تقسیم را انجام می دهد را برای تحت ویندوز نوشتم که این طور بوش می آد برای تحت وب هم همین هست !!




سلام

خروجی این سورس کد در برنامه نویسی تحت ویندوز (Windows Application) درسته
ولی
در برنامه نویسی تحت وب خروجی این برنامه 0 می شود

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

ببیندید دلیل چی هست که خروجی ها در تحت وب مشکل دارد؟؟؟


ببخشید از اینکه جواب ها رو دیر میدم!:خجالت:

reza69
جمعه 19 اسفند 1390, 19:24 عصر
من یکی درست کردم ولی نمیدونم چرا جواب هر بار 0 میشه؟
دانلود (http://www.up.98ia.com/images/lzndakmdmp3uxuknang4.rar)

mojtaba_kz
جمعه 19 اسفند 1390, 22:46 عصر
من یکی درست کردم ولی نمیدونم چرا جواب هر بار 0 میشه؟
دانلود (http://www.up.98ia.com/images/lzndakmdmp3uxuknang4.rar)

من دلیلیش رو میدونم و میدونم مشکل از کجاست ولی اینکه چطور این مشکل رو باید حل کرد رو نمیدونم...

مشکل این است که چون این صفحات بصورت کلاینت سایت است و یا سرور سایت هست با زدن یک دکمه صفحه به حالتی مانند لود شدن در میاد و با این دوباره لود کرده هر بار مقدار متغیر هایی که در برنامه بکار می بریم 0 می شود و در خروجی که باید مقدار متغیر جواب در تکس باکس ریخته شود 0 منتقل می شود

این رو میدونم که در زبان سی شارپ برای حل این مشکل از قطعه کدی مانند زیر استفاده می شود.

namespace WebApplication1
{
public partial class _Default : System.Web.UI.Page
{
public static string Num1

}
}


با بکار بردن کلمه static این مشکل ظاهرا باید حل بشه ، جایگزین این کلمه در VB.net چی هست؟؟

Mani_rf
جمعه 19 اسفند 1390, 22:57 عصر
با بکار بردن کلمه static این مشکل ظاهرا باید حل بشه ، جایگزین این کلمه در VB.net چی هست؟؟

کلمه کلیدی Shared در Vb.net این کار را انجام می دهد.

Mani_rf
جمعه 19 اسفند 1390, 23:02 عصر
کاری که شما می خواهید انجام دهید با ASP.Net تقریبا انجام ناپذیر است. (البته تقریبا به این خاطر که می شود ولی عاقلانه نیست.) ASP.Net یک مفهمو Server Side است که با فشرده شدن هر کلید یک ریکوست به سرور می فرستد که در نتیجه صفحه را رفرش می کند . بهتر است برای انجام این کار اگر می خواهید که تحت وب باشد از Java Script و یا JQuery استفاده کنید. بسیار ساده تر و سریعتر و البته کاربردی تر است.

mojtaba_kz
شنبه 20 اسفند 1390, 00:19 صبح
دوستان ماشین حساب مشکلش حل شد.

تشکر از تمامی دوستان عزیز خصوصا Mani_rf , reza69 ,tam2145 ,vbBoss

خدا خیرتون بده...