.NET 4.x Обработка функцией нескольких переменных - Visual Basic .NET

  1. Как функцией обрабатывать сразу несколько переменных? Есть три переменных: data1 data2 data3 Переменные содержат текст. Есть функция Unpack, которая преобразует текст. Хочу понять, как при нажатии на кнопку обработать функцией Unpack три переменных и получить результат обработки в новых переменных. Если на вход функции подавать одну переменную, то это выглядит так:vb.net1 Dim myTextVal As String = data1Результат после обработки функцией вывожу так:vb.net1 RichTextBox2.Text = unpTextТолько не злитесь пожалуйста за целую кучу нубских вопросов , я учусь и многого в программировании еще не понимаю.


textual

Код:

Function Unpack(data As List (Of String))
 For Each item in data
   
 Next
End Function


Похожие ответы
  1. Всем привет ! Вот просто до смешного, но сколько перечитал материала по событиям, делегатам и обработчикам - во всех книжках однотипный пример с непонятными шаблонными объяснениями. MSDN тоже особо не помог - как пономарь "вот тут напишем так, вон там подпишемся - у все, будет вам счатье." Может я настолько туп.., но объясните, пожалуйста: есть два класса - ClassA и ClassB. Пусть объекты класса A будут генерить события, объекты класса B их обрабатывать. В связи с этим поясните, пожалуйста: 1) в теле какого из этих классов я должен объявлять делегат обработчика событий класса А ? 2) как должна выглядеть подписка на события класса A, если по ходу логики программы сначала создается объект класса B, а потом объект класса A. И наоборот, если сначала создаются объекта A, а затем уже объекты класса B ? 3) нужно ли всегда поштучно подписывать каждый создаваемый объект класса B на обработку событий класса A или можно разом подписать все уже существующие объекты класса B. 4) И зааачем вообще нужен посредник - делегат метода-обработчика, если я могу напрямую указывать метод-обработчик посредством (AddressOf) ? Вопросы банальны, но конкретики в литературе нет. Может кто даст наводку - буду очень признателен

  1. Всем доброе время суток. При нажатии Button1 выбираем папку с файлами, если есть файлы идём дальше, если нет файлов то выскакивает ошибка и возвращает обратно к выбору папки с файлами. Пытался сделать так:vb.net1 2 3 4 5 6 7 8 9 10         Try             Dim Open As New FolderBrowserDialog             If Open.ShowDialog = Windows.Forms.DialogResult.OK Then                 Path1 = Open.SelectedPath                 Label1.Text = Path1                                     MsgBox("Файл существует", vbInformation)             End If             MsgBox("Файл существует", vbCritical)         Catch ex As Exception         End TryНо не выходит. Подскажите пожалуйста как это можно реализовать? Поиск по данному случаю не дал результата. Заранее спасибо.Не умею обрабатывать ошибки!

  1. Здраствуйте! У меня есть проект, в котором я использую сетку. Мне нужно рисовать точки только места, где оси пересекаются.Эти точки рисоват с помощью мыши.Мышь не следует делать в пустые коробки! Как запретить мыши не рисует в пустых коробках? Пожалуйста, если кто-нибудь может мне помочь.Простите меня для плохой русский язык!vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 Private Sub picTest_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles picTest.MouseDown       Dim hstep As Double = picTest.Width / 12   Dim vstep As Double = picTest.Height / 12     Dim myPen As New Pen(Color.Red, 3)   Dim g As Graphics = Graphics.FromImage(gBitmap)     picAG.Refresh()     If e.Button = System.Windows.Forms.MouseButtons.Left Then   points.Add(e.Location) ' add point on left click   For i As Integer = 0 To points.Count - 1   g.DrawRectangle(myPen, points(i).X - 2, points(i).Y - 2, 5, 5)   Next       End If       If (NewPolygon IsNot Nothing) Then   If (e.Button = MouseButtons.Right) Then   gBitmap = Nothing   ' Finish this polygon.   If (NewPolygon.Count > 0) Then Polygons.Add(NewPolygon)   NewPolygon = Nothing   picTest.Image = gBitmap     Else   ' Add a point to this polygon.   If (NewPolygon(NewPolygon.Count - 1) <> e.Location) Then     Dim i As Integer   For i = 0 To 12   NewPolygon.Add(New Point(e.X, e.Y )'Here I think to use'hstep,vstep and i',but I don`t know how to do ?!   picTest.Image = gBitmap     Next i   End If   End If     Else   ' Start a new polygon.   NewPolygon = New List(Of Point)()   NewPolygon.Add(e.Location)   NewPoint = (e.Location)   End If       ' Redraw.   picTest.Invalidate()     'Dispose of objects   myPen.Dispose()   g.Dispose()     Private Sub picTest_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles picTest.MouseMove     If (NewPolygon Is Nothing) Then Exit Sub   NewPoint = e.Location   ' Redraw.   picTest.Invalidate()   End Sub     Private Sub picTest_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles picTest.Paint   Dim g As Graphics = e.Graphics   Dim myPen As New Pen(Color.Red, 2)     If (NewPolygon IsNot Nothing) Then     ' Draw the new polygon.   If (NewPolygon.Count > 1) Then   e.Graphics.DrawLines(myPen, NewPolygon.ToArray())       For i As Integer = 0 To points.Count - 1   e.Graphics.FillEllipse(Brushes.Green, points(i).X - 2, points(i).Y - 2, 5, 5)   Next     End If     End If         Dim hstep As Double = picTest.Width / 12   Dim vstep As Double = picTest.Height / 12     'Draw horizontal Line   Dim X As Single = hstep   For i As Integer = 0 To hstep     g.DrawLine(New Pen(Color.Black, 2), New Point(X, 0), New Point(X, Height))   X += hstep   Next i     Dim Y As Single = vstep   For i As Integer = 0 To vstep     'Draw Vertical Line   g.DrawLine(New Pen(Color.Black, 2), New Point(0, Y), New Point(Width, Y))   Y += vstep   Next i     End Sub

  1. Доброго времени суток.Горячие клавиши для свернутой в трей программы Такой вопрос - нельзя ли сделать обработку сразу нескольких горячих клавиш? Я имею ввиду не модификатор+клавиша, а именно несколько горячих клавиш. Например. Переменные: A и B. Горячие клавиши: [A] и [B]. По нажатию [A] - A += 1, по нажатию [B] - B+= 1. По одновременному нажатию [A] и [B] - одновременно увеличиваются значения обоих переменных.

  1. Друзья, приветствую! Задача: есть коллекция, в которой хранятся артикулы товаров, есть процедура которая по артикулу ищет описание запчастей. Сейчас это работает последовательно, то есть запускают цикл и по очереди эти артикулы перебираются. Я хочу через BW сделать это асинхронно, для этого программно создаю несколько backgroundworkеров, но проблема в том, что я хочу создать, например 10 BW, а запчастей 200. Как сделать так чтобы программа запускала поиск артикулов по 10 артикулам , а следующие 10 запускались только, тогда когда BW освободятся? Я не хочу плодить 200 BW.

  1. Помогите обработать ошибку в этом коде.vb.net1 2 3 4 5 Public Sub PicView()         Dim fileName As String = IO.Path.Combine("G:\_Cabinet.net\CatalogRD\CatalogRD\Case" & txtPic.Text)         'On Error Resume Next         PictureBox1.Image = System.Drawing.Image.FromFile(fileName)     End SubЕсли в переменной fileName нет имени файла. то программа вываливается с ошибкой как на скрине. Если пишу vb.net1 On Error Resume Next, то PictureBox висит последняя картинка до тех пор пока опять в базе не появится строка с именем файла. Как сделать так, чтобы при отсутствии в fileName имени файла не чего не отображалось в PictureBox

  1. в текстбоксах есть AcceptsReturn во всплывающей подсказке написано ".. при нажатии ENTER: перенос строки или активация кнопки стандартного действия формы". ескейп на кнопку повесить я смог. а вот энтер на кнопку не нашел как. (текстбокс не многострочный) как вариантvb.net1 2 3 me.keypreview = true   if keycode = 37 then cmd_click()но может есть более правильный вариант.

  1. Как при правом клике мышки вызвать свое меню? Мне нужно в ListBox нажать на конкретной позиции(Item) правую кнопку, далее, чтобы после нажатия открылась менюшка, в ней мои пункты меню. Нажимаю на пункт меню, открывается Form2. Можно не расписывать как и чего, просто дайте отправную точку, чтобы это реализовать. Извиняюсь, если это совсем нубский вопрос, но с правым кликом мышки как-то не доводилось еще ни разу работать, поэтому и не знаю с чего начать.Добавлено через 10 минутПравый клик я нашел, спасибо Памирычу. Про менюшку прикрученную к этому клику пока еще актуально, пытаюсь что-то искать по этому поводу.

  1. Есть ли в vb какие-то средства, чтобы выводить таймер в формате h:m:s? Нужно так: 1. Нажали кнопку1, начался отсчет времени в формате h:m:s 2. Нажали кнопку2, таймер остановился. 3. Нажали кнопку3, таймер продолжил отсчет с того места, на котором был остановлен. Или помогите дописать велосипед. На MSDN нашел про некий TimeSpan, начал городить велосипед, но залип с возобновлением таймера. Код: vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28  Dim tmrStart As Date  ' время запуска         Dim tmrStoped As Date ' время окончания         Dim tmrRazn As New TimeSpan ' разница времени   'Запуск таймера     Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click         tmrStart = Now 'Начало работы таймера         Timer1.Start()     End Sub   'Таймер, который выводит в Label1 отсчет времени через каждую сек.     Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick         tmrStop = Now ' Тик таймера(завершение)         tmrRazn = tmrStop.Subtract(tmrStart) ' Вычитаем разницу во времени         Label1.Text = tmrRazn.Hours & ":" & tmrRazn.Minutes & ":" & tmrRazn.Seconds     End Sub   'Останавливаем таймер Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click         Timer1.Stop()     End Sub   'Возобновляем работу таймера с того места, где остановились Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click         'Тут чего-то под вечер уже не думается)))  Не знаю как нормально возобновить отсчет       End Sub

  1. Приветствую, уважаемые форумчане! С помощью компонента WebBrowser получаю заголовок страницы, URL которой указывает пользователь. При этом на некоторых сайтах, к примеру MSN, вылезает "ошибка сценария" (скриншот прилагаю). Эту ерунду можно как-то обработать, чтобы не появлялась?