View: 9225|Reply: 14
|
Dictionary menggunakan vb. minta tolong kepada yang mahir.
[Copy link]
|
|
masalah saya skrg ni, bila saya debug je program ni dan tekan perkataan untuk mencari maksudnya dalam bahasa inggeris, ianya akan load lama sgt. kadang2 sampai not responding. ini contoh code yang saya guna. boleh tk bg tips untuk ringkaskan lagi code ni dan mempercepatkan lagi program ni.
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = "a" Then
TextBox2.Text = "Huruf pertama dalam abjad rumi dan juga bermaksud sebuah, suatu, seorang, sebiji dll"
ElseIf TextBox1.Text = "abaca" Then
TextBox2.Text = "abaka, sejenis pokok"
ElseIf TextBox1.Text = "aback" Then
TextBox2.Text = "kebelakang"
ElseIf TextBox1.Text = "abacus" Then
TextBox2.Text = "detak-detak, sempoa sejenis alat penghitung"
ElseIf TextBox1.Text = "abaft" Then
TextBox2.Text = "pada (dekat) bunyikan kapal"
End If
End Sub
End Class |
|
|
|
|
|
|
|
program ni bleh translate 5 perkataan jer ker?
btw utk terjemahan tu x profesional di masukkan sebagai hard code. kan lebih elok kalo dimasukkan ke dalam fail lain such as text fail ker... |
|
|
|
|
|
|
|
eh tak laa. kalau boleh nak buat kamus sebetul-betul kamusnya. hee. dari A sampai Z.
"kan lebih elok kalo dimasukkan ke dalam fail lain such as text fail ker..."
tk berapa faham la. boleh jelaskan lebih detail tak?
terima kasih kerana sudi menjawab soalan saya ini. |
|
|
|
|
|
|
|
"kan lebih elok kalo dimasukkan ke dalam fail lain such as text fail ker..."
moltenx Post at 8-3-2012 23:49
what i mean is part of software design n maintenance.
dr segi design kalo nak masukkan perkataan huruf dr A smpi Z ke dalam hardcord, coding tu akan jd panjang dan next time susah nak edit takrifan perkataan dlm kamus tu.
so, bg memudahkan design, hard code just main peranan utk cari perkataan dan memaparkan perkataan sahaja. so maklumat2 semua disimpan di dalam 1 fail lain. fail lain ni kira mcm database. nak best pki databse yg canggih skit mcm sql, kureng skit amik excel or access atau paling cikai amik notepad pun blh.
err kalo x paham jgk, i cant help u la.... |
|
|
|
|
|
|
|
Reply 4# otai_g
ohh. okay. skrg da faham! sori2 blur sikit tadi. hm thanks! ianya sangat berguna. huhu. terima kasih sgt2. |
|
|
|
|
|
|
|
TT dah belajar database ke?
Dah belajar dah ke nak connect VB tu dengan database?
MySQL ke SQLite ke Access ke?
Paling cikai pun guna ajerlah TXT file, isi dictionary tu line by line, lepas tu baca file guna VB.
errrr... TT dah belajar bukak TXT file guna VB ke? |
|
|
|
|
|
|
|
tgh belajar kat youtube on how to connect vb with access. sql belum mahir lagi. |
|
|
|
|
|
|
|
Selamat beraccess... |
|
|
|
|
|
|
|
nanti malam sy akan buatkan coding utk dictionary nih.. |
|
|
|
|
|
|
|
Edited by otai_g at 17-8-2023 08:41 AM
Post Last Edit by otai_g at 17-3-2012 20:45
okies siap jgk akhirnya.
1st copy file database dulu dlm notepad dan namakan sebagai kamus.txt -> letakkan fail ni dlm partition C:\
cth fail :-
- abaca=abaka, sejenis pokok
- aback=kebelakang
- abacus=detak-detak, sempoa sejenis alat penghitung
- abaft=pada (dekat) bunyikan kapal
Copy the Code
my vb coding. x brp kemas, maybe otai2 leh cunkan skit coding ni. p/s: coding ni ada bug.
- 'copyright reserved
- Private Sub Command1_Click()
- 'data initialize
- DBPath = "c:"
- strBackSlash = IIf(Right$(DBPath, 1) = "", "", "")
- strFileName = DBPath & strBackSlash & "kamus.txt"
- 'routine to calculate total lines of dictionary file
- Dim counter As Long, tmp As String
- counter = 0
- Open strFileName For Input As #1
- While Not EOF(1)
- Line Input #1, tmp
- counter = counter + 1
- Wend
- Close #1
- 'routine to store every line into array
- Dim strArray() As String
- Open strFileName For Input As #1
- strArray = Split(Input(LOF(1), 1), vbCrLf)
- Close #1
- 'routine to searching data
- For i% = 0 To counter
- If Split(strArray(i%), "=")(0) = Text1.Text Then
- found% = i
- Text2.Text = Split(strArray(found%), "=")(1)
- Exit For
-
- ' Else
- ' MsgBox "Words Not Found. Try Again.", 0
- ' Exit For
-
- End If
- Next
- End Sub
- Private Sub exit_Click()
- Unload Me
- End Sub
- Public Sub Form_Load()
- Text1.Text = "<words>"
- Text2.Text = "<translation>"
- End Sub
Copy the Code
cth hasil akhir, program yg dah siap :-
|
|
|
|
|
|
|
|
Reply 10# otai_g
hm. terima kasih byk2 otai_g. walaupun mcm blur sikit baca kod2 tu. tp skrg da faham =D |
|
|
|
|
|
|
|
Reply 11# moltenx
senang je algorithm program ni.
1. dia akan kira brp total line yg ada dlm kamus.txt
2. dia akan simpan setiap line dlm 1 array. thats mean kalo ada 100 line, 100 array la -> cr ni x brp baik sbb lg bnyk array lg slow performance.
3. dia akan search perkataan yg kita nak cr dlm array tu n display maknanya. makna setiap perkataan adalah selepas simbol =
actually coding ni bkn 100% aku buat. ada certain2 part rembat dr internet jah. n then sbg programmer kita x perlu la tau for every single line, kalo tau apa function tu buat pun da cukup sbb dlm certain2 situation kena pki jgk outsourcing like api, database engine n so on.. |
|
|
|
|
|
|
|
tak bagus ke guna collection?
abundek Post at 1/4/2012 10:39 PM
memanglah bagus Collection tu (malah lagi efisyen daripada Array) tapi otai_g bagi contoh yang basic, tak payah nak bergantung kepada mana-mana external library, kurang sikit dependency hell tu..... |
|
|
|
|
|
|
|
haaa....mcm nie la baru bagus....
nak tanya tapi beri satu bukti yg mana ko dh usaha... gud!!!
teruskan...
|
|
|
|
|
|
|
| |
|