2013-10-08 7 views
0

Я здесь, чтобы немного решить проблему конвертации валюты вручную.Конвертер валют Visual basic 2010

Как добавить другое значение в том же существующем поле со списком, что ответы должны быть разными.

Пример Япония Йена Долларам США = 12,43, но доллары США к Японии Йена имеет одинаковый ответ.

Каков способ установки значений на combobox2, ответы на которые всегда различны при установке.


Private Sub CurrencyFromCombobox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CurrencyFromCombobox.SelectedIndexChanged 


Select Case CurrencyFromCombobox.Text 

Case "Japanese Yen - JPY" 
      fromjapan = 1 
     Case "U.S. Dollar - USD" 
      fromUSdollars = 1 
    End Select 


Private Sub CurrencyToCombobox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CurrencyToCombobox.SelectedIndexChanged 
    Select Case CurrencyToCombobox.Text 
     Case "Japanese YEN - JPY" 
      japanto = 1.0 
      USto = 323 
     Case "Euro - EUR" 
      japanto = 0.0075774548 
     Case "British Pound - GBP" 
      japanto = 0.0064142153 
     Case "Indian Rupee - INR" 
      japanto = 0.6309714918 
     Case "Australian Dollar - AUD" 
      japanto = 0.0108982954 
     Case "U.S. Dollar - USD" 
      japanto = 0.0102789194 
     Case "Canadian Dollar - CAD" 
      japanto = 0.010583474 
     Case "UAE Dirham - AED" 
      japanto = 0.0377534428 

    End Select 


    '------------------------------------------------------------Currency rates ffom US  Dollars 
    Select Case CurrencyToCombobox.Text 
     Case "Japanese YEN - JPY" 
      USto = 323 
     Case "Euro - EUR" 
      USto = 0.7368 
     Case "British Pound - GBP" 
      USto = 0.6217 
    End Select 
End Sub 

    Private Sub Enterbutton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Enterbutton.Click 
    Dim enter As Decimal 

    ' Japanese yen conversion 
    enter = Val(Enteramounttxt.Text) 
    result = enter * fromjapan * japanto 
    Resulttxt.Text = result.ToString 

    ' US Dollar conversion 

    result1 = enter * fromUSdollars * USto 
    Resulttxt.Text = result1.ToString 
End Sub 
+1

Это не хороший проект, потому что валюты всегда будет меняться. Лучше всего было бы подключиться к API конвертера валют Google, который всегда будет иметь последние обновленные значения валюты. – SSpoke

ответ

2

Попробуйте это (требуется подключение к Интернету для работы)

Public Class Form1 

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
     MsgBox(Convert(0.5, "USD", "EUR")) 
    End Sub 

    Public Function Convert(ByVal amount As Decimal, ByVal fromCurrency As String, ByVal toCurrency As String) As Decimal 

     Dim web As System.Net.WebClient = New System.Net.WebClient() 
     Dim url As String = String.Format("http://www.google.com/ig/calculator?hl=en&q={2}{0}%3D%3F{1}", fromCurrency.ToUpper(), toCurrency.ToUpper(), amount) 
     Dim response As String = web.DownloadString(url) 

     Dim regex As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex("rhs: \""(\d*.\d*\.?\d*)") 
     Dim match As System.Text.RegularExpressions.Match = regex.Match(response) 

     Dim rate As Decimal = System.Convert.ToDecimal(match.Groups(1).Value) 
     Return rate 
    End Function 
End Class 
Смежные вопросы