انا عامل فورم و عليها كمبو بوكس المثال بالمرفقات ... و داتا بيز اكسس ... رابطها مع الفورم عن طريق مكتبة الــ ADO
الداتا بيز فيها كذا جدول و كل جدول فيه حقل واحد فقط و هو link و متسجل عليه رابط
و الكود دا اللى بيحمل كل الجداول في الكمبو بوكس
Do Until rs.EOF
If rs.Fields("TABLE_TYPE") = "TABLE" Then
Combo1.AddItem rs.Fields("TABLE_NAME")
End If
rs.MoveNext
Loop
-----------
المطلوب
-----------
عاوز لما اختار اي جدول من الكمبو بوكس و اضغط عليه يفتح الرابط اللى جواه في المتصفح الافتراضي بتاع الجهاز
و الكود دا اللى بيفتح الروابط في المتصفح الافتراضي بالجهاز
Private Declare Function ShellExecute _
Lib "shell32.dll" _
Alias "ShellExecuteA"( _
ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) _
As Long
Private Sub Command1_Click()
Dim r As Long
r = ShellExecute(0, "open", "http://www.microsoft.com/", 0, 0, 1)
End Sub
- إذا كانت جميع الروابط التي في قاعدة البيانات محمله أو موضوعه في الكومبوبوكس , والمشكلة فقط في كيفية فتحها , فبدل هذا الجزء من كود الفتح الذي وضعته أنت ليصبح هكذا :-
كود :
r = ShellExecute(0, "open", Trim$(Combo1.Text), 0, 0, 1)
- إذا كانت جميع الروابط التي في قاعدة البيانات محمله أو موضوعه في الكومبوبوكس , والمشكلة فقط في كيفية فتحها , فبدل هذا الجزء من كود الفتح الذي وضعته أنت ليصبح هكذا :-
كود :
r = ShellExecute(0, "open", Trim$(Combo1.Text), 0, 0, 1)
- تحياتي .
شكرا علي مرورك الكريم .... ممكن حضرتك تعدلي علي المثال اللى انا رفقته و تنزله عشان افهم فكرتك
- هذا الكود كامل أنسخه وألصقة في مثالك , مع نعديل كود فتح اللنك :
كود :
Private Declare Function ShellExecute _
Lib "shell32.dll" _
Alias "ShellExecuteA" ( _
ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) _
As Long
Dim DB As New ADODB.Connection
Dim RS As New ADODB.Recordset
Private Sub Form_Load()
DB.Provider = "Microsoft.jet.oledb.4.0;"
DB.Open App.Path & "\db.mdb"
If RS.State = adStateOpen Then RS.Close
Set RS = DB.OpenSchema(adSchemaTables)
Do Until RS.EOF
If RS.Fields("TABLE_TYPE") = "TABLE" Then
Combo1.AddItem RS.Fields("TABLE_NAME")
End If
RS.MoveNext
Loop
If RS.State = 1 Then RS.Close
End Sub
Private Sub Command1_Click()
If Trim$(Combo1.Text) <> "" Then
Dim R As Long
RS.Open "Select * From " & Trim$(Combo1.Text), DB, adOpenDynamic, adLockOptimistic
If RS.RecordCount > 0 Then
If Not IsNull(RS![link]) Then
R = ShellExecute(0, "open", RS![link], 0, 0, 1)
End If
End If