يعد Microsoft Access قاعدة البيانات الأكثر استخدامًا لـ Visual Basic، لكن Visual Basic لا يوفر وظيفة مشابهة لأمر BROWS الخاص بـ FoxPRoforWindows لاستعراض قاعدة بيانات Access. يوفر هذا البرنامج طريقة مشابهة لواجهة أوامر BROWS لتصفح قواعد بيانات Access. ويمكن للقراء المهتمين إعادة كتابة هذا البرنامج كإجراء فرعي باستخدام المعلمات (اسم قاعدة البيانات، واسم الجدول، واسم الحقل، وعرض الحقل، وما إلى ذلك) لتنفيذ طريقة مشابهة لـ Foxproforwindows. يتم استدعاء وظائف الأمر BROWS في التطبيق الخاص بك.
أولاً، قم بتعريف شبكة (gridl)، ومربع قائمة (list1)، ومربع حوار عادي (dlg)، وعنصر التعرف على البيانات (datal)، وزري أوامر (command1 وcommand2) في النافذة، وترتيب مواضعهم.
عند تنفيذ البرنامج، اضغط على الزر "فتح" لفتح مربع حوار. بعد تحديد ملف قاعدة البيانات، يعرض البرنامج أسماء الجداول الموجودة في قاعدة البيانات في مربع القائمة. انقر فوق اسم الجدول في مربع القائمة لتصفحه طاولة. يمكن لهذا البرنامج ضبط حجم منطقة التصفح تلقائيًا وفقًا لطول الحقل وحجم الخط للتأكد من أن منطقة التصفح لا تتجاوز النافذة. إذا لم تتمكن النافذة من ملء منطقة التصفح، يقوم البرنامج تلقائيًا بإضافة أشرطة تمرير أفقية أو رأسية إلى منطقة التصفح. مرفق قائمة البرامج:
1SubCommand1_Click()'انقر فوق الزر "فتح" بالماوس
2Dim,IAsInteger,cuntAsInteger
3grid1.Visible=False
4dlg.اسم الملف = ""
5dlg.Filter="الوصول(*.MDB)|*.MDB"
6dlg.FilterIndex=1
7dlg.Action=1'افتح مربع الحوار
8Ifdlg.Filename=""ثم إذا لم يتم تحديد أي ملف
9GoTocanc
10EndIf
11data.Connect = ""
12data.DatabaseName=dlg.Filename
13data.RecordSource = ""
14 البيانات. التحديث
15browser.Caption="الوصول إلى المتصفح[" datal.DatabaseName "]"
16cunt=data.Database.TableDefs.Count
17listl.واضح
18ForI=0Tocunt-1'أضف اسم الجدول إلى مربع القائمة
19IfLeft(data.Database.TableDefs(I).Name,4)<>"Msys"ثم
20listl.Additemdata.Database.TableDefs(I).الاسم
21نهايةإذا
22التاليI
23label1.Visible=صحيح
24list1.Visible=صحيح
25list1.ListIndex=0
26 كانك:
27EndSub
28SubCommand2_Click()'انقر فوق الزر "خروج" بالماوس
29النهاية
30EndSub
31SubForm_Load()
32browser.Caption="الوصول إلى المتصفح"
33grid1.Height=3200
34grid1.Visibli=False
35list1.Visible=False
36label1.Visible=False
37EndSub
38SubListl_Click()'مربع قائمة نقاط الماوس
39DimctAsInteger
40data1.RecordSource=listl.Text
41ct=data1.Database.TableDefs(list1.ListIndex).Fields.Count
42grid1.Cols=ct
43grid1.Row=0
44ForI=0Toct-1'أضف اسم كل حقل في الجدول إلى الصف الأول من الشبكة
45grid1.Col=I
46grid1.Text=data1.Database(data1.RecordSource)،الحقول(I).الاسم
47التالي
48data1.Refresh
49data1.Recordset.MoveLast
50grid1.Rows=data1.Recordset.RecordCount 1
51data1.Recordset.MoveFirst
52grid1.Row=0
53WhileNotdata1.Recordset.EOF'اقرأ البيانات في كل خلية بالشبكة
54grid1.Row=grid1.Row 1
55Fori=0Toct-1
56grid1.Col=I
57IfNotIsNull(data.Recordset(I).Value)ثم
58grid1.Text=data.Recordset(I).القيمة
59 آخر
60grid1.Text = ""
61نهايةإذا
62cellwidth=TextWidth(grid1.Text) 200
63Ifcellwidth>grid1.ColWidth(I)ثم
64gridl.ColWidth(I)=cellwidth
65نهايةإذا
66التاليI
67data1.Recordset.MoveNext
68 نهاية
69grid1.Width=0
70Fori=0Toct-1'احسب العرض الإجمالي للشبكة
71grid1.Width=gridl.Widthgridl.ColWidth(I)
72التاليI
73Ifgrid1.Width>scalewidthثم'إذا كان العرض الإجمالي للشبكة أكبر من عرض النافذة
74grid1.Width=scalewidth
75إنديف
76grid1.Height=(gridl.Rows 2)*20*grid1.FontSize' حساب طول الشبكة
77Ifgrid1.Height>3200 إذن، إذا كان طول الشبكة خارج الحدود
78شبكة1.الارتفاع=3200
79إنديف
80browser.Width=grid1.Width 300'تعيين عرض النافذة
81grid1.Visible=صحيح
82EndSub->