Pada pertemuan sebelumnya kita sudah membuat bagaiamana cara membuat spinner berupa angka, namun pada pertemuan kali ini saya akan membagikan sebuah kode bagaimana cara membuat Spin Text yaitu spin yang berupa teks dengan menggunakan visual basic 6.0 .
Apa itu Spin Text yaitu mengganti kata atau kalimat dengan menggunakan kata sinonim dari kata tersebut.
Contoh kalimat Spin Text
"Saya akan pergi ke kantor" ketika kita menekan tombol Spin maka kalimatnya menjadi :
ana hendak berangkat ke ofice
saya mao berangkat ke ofice
saya hendak berangkat ke ofice
Saya berencana berangkat ke ruang kerja
dan seterusnya apabila anda menekan tombol spin
Untuk lebih jelasnya tentang Spin Text perhatikan pada gambar dibawah ini :
Spin Teks |
Untuk membuat spin teks seperti pada gambar diatas langkah-langkahnya adalah
1 .Buka Form VB6 standar EXE
2. Pada Form tanamkan 3 Label, 1 Textbox, 1 Checkbox dan 1 Commandbutton
3. Desainlah form seperti gambar diatas
Setelah mendesain form ketik kode berikut dibawah ini :
Option Explicit
Private Function ChooseWord(choice As Variant, bWord, Optional bUnik As Boolean) As String
Dim i As Integer
Dim strSpin() As String, strChooseWord As String
strSpin = Split(choice, ",")
If Not bUnik Then
Randomize
i = CInt((UBound(strSpin) * Rnd) + 1)
strChooseWord = strSpin(i - 1)
Else
Do
Randomize
i = CInt((UBound(strSpin) * Rnd) + 1)
strChooseWord = strSpin(i - 1)
Loop While strChooseWord = bWord
End If
ChooseWord = strChooseWord
End Function
Private Sub Command1_Click()
Dim strResult As String
Dim strSource As String
strResult = Label1
strSource = Text1.Text
strResult = LCase(strSource)
Dim arrWord() As String
ReDim arrWord(4) 'gantilah menjadi 40, 400, atau 4000
'apabila algoritmanya telah dimodif dan mantap maka
'tambahkan sinonim menjadi 40, 400, atau 4000
arrWord(0) = "saya, aku, ane, ana, gue "
arrWord(1) = "pergi, berangkat"
arrWord(2) = "akan, berencana, hendak, mau"
arrWord(3) = "kantor, office, ruang kerja "
arrWord(4) = "gmail, gmail.com, google mail, layanan email milik google (gmail)"
'--------------------------------------------------------
Dim i As Integer, k As Integer
For i = LBound(arrWord) To UBound(arrWord)
Dim strSpin() As String
strSpin = Split(arrWord(i), ",")
For k = LBound(strSpin) To UBound(strSpin)
If InStr(1, strSource, strSpin(k)) > 0 Then
strResult = Replace(strResult, strSpin(k), ChooseWord(arrWord(i), strSpin(k), Check1.Value = 1))
Exit For
End If
Next
Next
Label1.Caption = Trim$(strResult)
End Sub
Private Sub Form_Activate()
Text1.SetFocus
End Sub
Private Sub Form_Load()
Label1.Caption = ""
Text1.Text = ""
Check1.Value = 1
End Sub
No comments:
Post a Comment