PDA

View Full Version : مقدار دهی توسط WebBrowser و همینطور فرستادن کلید اینتر



aleas2
پنج شنبه 04 اردیبهشت 1393, 14:45 عصر
سلام خسته نباشید این کد ببینین


<div class="form-group string required link_tag_list"><label class="string required control-label" for="link_tag_list"><abbr title="الزامی">*</abbr> برچسب‌ها</label><input class="string required form-control" id="link_tag_list" name="link[tag_list]" placeholder="مثلا حقوق بشر+صلح+جهانی‌سازی" size="50" type="text" value=""/><p class="help-block">برچسب‌ها باید با علامت + از هم جدا شوند. حداقل یک برچسب اضافه کنید.</p></div>

وقتی درون کادر link_tag_list بطور مثال مقدار سایت + خبری+ اخبار + و...

به محض اینکه + وارد میکنی جمله قبلی ثبت میشه یا حتی جای + اینتر یا tab هم میزنی جمله ثبت میشی و دوباره باید در کادر link_tag_list کلیک و مقادر جدید دوباره وارد کنی

حالا وقتی با vb6


WebBrowser1.Document.Forms(1).elements("link_tag_list").Value = "سایت+خبری+اخبار"

به این شکل انجام میدم مقداری ثبت نمیشه چکار باید بکنم امیدوارم متوجه منظورم شده باشین


-------------------------------------

اگر متوجه منظورم نشدین فایل ضمینه دانلود کنین که صفحه وب پیوست کردم
بعد فایل اجرا کنین

متوجه میشین من میخوام با WebBrowser داخل کادر برچسب ها مقدار وارد کنم چطور اینکار انجام بدم؟

سید حمید حق پرست
جمعه 05 اردیبهشت 1393, 16:59 عصر
سلام علیکم
راهی که به نظرم رسید روش زیره :
Sub Pause(interval As String)
Dim Current
Current = Timer
Do While Timer - Current < Val(interval)
DoEvents
Loop
End Sub

Private Sub Command1_Click()
WebBrowser1.Document.getElementById("link_tag_list").focus
SendKeys "test+"
Pause (0.02)
WebBrowser1.Document.getElementById("link_description").focus
WebBrowser1.Document.getElementById("link_tag_list").focus
SendKeys "web+"
Pause (0.02)
WebBrowser1.Document.getElementById("link_description").focus
WebBrowser1.Document.getElementById("link_tag_list").focus
SendKeys "text+"
Pause (0.02)
WebBrowser1.Document.getElementById("link_description").focus
End Sub

Private Sub Form_Load()
WebBrowser1.Navigate "https://www.balatarin.com/links/submit"
End Sub
برای فارسی نوشتن باید قبلش زبان صفحه کلید فارسی باشه که کد بالا به صورت زیر تغییر میدیم :
Private Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long

Sub Pause(interval As String)
Dim Current
Current = Timer
Do While Timer - Current < Val(interval)
DoEvents
Loop
End Sub

Private Sub Command1_Click()
StrLocId = LoadKeyboardLayout("00000429", 1)
WebBrowser1.Document.getElementById("link_tag_list").focus
SendKeys "تست+"
Pause (0.02)
WebBrowser1.Document.getElementById("link_description").focus
WebBrowser1.Document.getElementById("link_tag_list").focus
SendKeys "وب+"
Pause (0.02)
WebBrowser1.Document.getElementById("link_description").focus
WebBrowser1.Document.getElementById("link_tag_list").focus
SendKeys "تکست+"
Pause (0.02)
WebBrowser1.Document.getElementById("link_description").focus
End Sub

Private Sub Form_Load()
WebBrowser1.Navigate "https://www.balatarin.com/links/submit"
End Sub
موفق باشید.

یا علی (ع)