PDA

Просмотр полной версии : Я незнаю на чём я пишу, но мне нужна помощ


Ponchik
25.03.2010, 17:10
Пишу я в "Microsoft Visual Studio 2008" какой язык при создании проэкта выбрал - непомню >_< Кажись Visual Basic а может и C++ :(
Ну не в этом смысл...
Есть такая функция
Function check(ByVal num)
Label2.Text = Label2.Text + ToString(num)
End Function
Я так понимаю, когда я вызываю check(число) он должен добавить его в Label2.Text
Я сделал вот так
check(0)
check(1)
check(2)
check(3)
...
check(17)
check(18)
check(19)
check(20)
А он мне в Label2.Text пишет "SmartDeviceProject3.F" ну тама продолжение будет если больше 20 вызывать
Тоесть при вызове check(3) он пропишет в Label2.Text букву "a"
Это как так вобще... Я расчитывал на то, чтоб он вывел
1234567891011121314151617181920
а он выводит
SmartDeviceProject3.F

Что курили авторы этого языка? :eek:
И что нужно сделать/скурить чтоб он мне вывел то, что я хочу
Подозреваю трабла в слове "ByVal" но я незнаю что оно значит, "Microsoft Visual Studio 2008" сам это слово вставил и не даёт удалить, возвращает обратно при компиляции

general.fox
25.03.2010, 17:14
Название темы улыбнуло.

Ponchik
25.03.2010, 17:15
Мне гугл сказал скачать "Microsoft Visual Studio 2008" я скачал, а на чём в нём кодить над не написано, кодю на том, на чём работает

.ATK
25.03.2010, 17:15
:D

Пишу я в "Microsoft Visual Studio 2008" какой язык при создании проэкта выбрал - непомню >_< Кажись Visual Basic а может и C++
Ну не в этом смысл...

Дай весь код... пишешь ты vb.

Ponchik
25.03.2010, 17:17
1 из 3

http://gyazo.com/d0ef66982c7d36d97a34536d8a4129ae.png

МБ всётаки поможете за печеньку? :(
======
Дай весь код
Public Class Form1
Function check(ByVal num)
Label2.Text = Label2.Text + ToString(num)
End Function

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
check(0)
check(1)
check(2)
check(3)
check(4)
check(5)
check(6)
check(7)
check(8)
check(9)
check(10)
check(11)
check(12)
check(13)
check(14)
check(15)
check(16)
check(17)
check(18)
check(19)
check(20)
End Sub
End Class

Кстате как в vb ставить комменатри?
//
#
--
/* */
{ }
ему не нравятся, а больше я незнаю

.ATK
25.03.2010, 17:24
Компилятора, vb, под рукою у меня нету, да и не писал я никогда в нём)) но кажись дело и вправду в ByVal попробуй его замени на Integer

psyx
25.03.2010, 17:25
Function check(ByVal num As Integer)
Label1.Text = Label1.Text + num.ToString
Return 1
End Function
Вот попробуй...

Ponchik
25.03.2010, 17:25
Компилятора, vb, под рукою у меня нету, да и не писал я никогда в нём)) но кажись дело и вправду в ByVal попробуй его замени на Integer
Да я пробовал

http://gyazo.com/e9d84511aac9149072904ea0254456cb.png

Function check(ByVal num As Integer)
Label1.Text = Label1.Text + num.ToString
Return 1
End Function
Вот попробуй...
Не помогло

psyx
25.03.2010, 17:27
ты Label1 оставил или поменял на свой(label2)?

Ponchik
25.03.2010, 17:29
ты Label1 оставил или поменял на свой(label2)?
Ну вот такое оно

http://gyazo.com/6a17a9f570a1f9d07ea0a7b977b81ab4.png

обычный label...

.ATK
25.03.2010, 17:29
Да я пробовал

http://gyazo.com/e9d84511aac9149072904ea0254456cb.png

:D хез)) скачай книжку какую нить толковую, методом тыка врядли быстро ненадоест... А, вообще, в след. раз выбирай C#

psyx
25.03.2010, 17:30
в той функции, которую я тебе написал, поменяй label1 на label2

Ponchik
25.03.2010, 17:30
Хакеры, звеняйте, не заметил чо ToString(num) над заменить на num.ToString
Так работает, цёма

И ещё, ToString это в строку, а как в Integer? ToInt/ToInteger нету

Нормально работает и без ToInt

А вот как округлить? Мне не в кайф видеть 3.3333333333333333
Round() нету, а гугл говорить юзать Round

BrainDeaD
25.03.2010, 18:41
Round() нету, а гугл говорить юзать Roundюзай Math.Round()

t4Nk
25.03.2010, 18:47
Кстате как в vb ставить комменатри?
ему не нравятся, а больше я незнаю
' одинарная ковычка xD

d_x
25.03.2010, 19:04
В вб по-моему невозможно не разобраться.
Вот пример с округлением:


Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
For i = 0 To 20
check(i / 3)
Next i
End Sub

Private Sub check(ByVal num)
Label1.Text = Label1.Text + Str$(System.Math.Round(num)) + " "
End Sub
End Class

Ponchik
25.03.2010, 19:37
Math.Round работает, спс, прога работает, /me доволен

slesh
25.03.2010, 22:33
эх... народ... с0всем бейсик забыли...
Label1.Text = Label1.Text & num и будет тебе счастье.
А если учесть что это MS овское тварение, то прокатит даже такая конструкция:
Label1.Text &= num