Страница: 1 |
Вопрос: MS Tabbed Dialog Control | Добавлено: 20.08.02 16:16 |
Автор вопроса: ![]() |
Занчит, использую этот самый контрол (панели со вкладками): Option Explicit Dim dbTax As Database, rs4 As Recordset, rs5 As Recordset Private Sub Form_Load() Set dbTax = OpenDatabase(dbdir & "\taxrep.mdb") Set rs4 = dbTax.OpenRecordset("Currency", dbOpenDynaset) Set rs5 = dbTax.OpenRecordset("Countries", dbOpenDynaset)
Select Case SSTab1.Tab Case 4 Set Data1.Recordset = rs4 Text4(0).DataField = "Currency" Text4(1).DataField = "CurrCode" Case 5 Set Data1.Recordset = rs5 Text5(0).DataField = "CName" Text5(1).DataField = "CCode" End Select
End Sub При загрузке - все нормально. При переходе со вкладки на вкладку - ошибка "Object doesn't support this property or method", и в текстбоксах поля таблицы не появляются. Возвращаешься на исходную вкладку - все нормально. Как быть? Спасибо. |
Ответы | Всего ответов: 12 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 12 Ответов: 430 |
Профиль | Цитата | #1 | Добавлено: 20.08.02 17:38 |
A problema ne w etoj procedure, smotri SStab1_Click(). IMHO Form_Load tut neprichem |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 7 Ответов: 256 |
Профиль | Цитата | #2 | Добавлено: 20.08.02 18:37 |
How many tabs do you have? Remember , tab started from 0!!!! |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 6 Ответов: 7 |
Профиль | Цитата | #3 | Добавлено: 20.08.02 18:53 |
O'K! There are 6 tabs -from 0 to 5. Of course, my example was simplified. Thank you. |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 12 Ответов: 430 |
Профиль | Цитата | #4 | Добавлено: 20.08.02 21:13 |
Ja tebe goworu posmotri Click i BeforeClick. Oshibka gde-to tam! |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 7 Ответов: 256 |
Профиль | Цитата | #5 | Добавлено: 20.08.02 21:31 |
Private Sub SSTAB1_Click(PreviousTab As Integer) Select Case previousTab Case 4 Set Data1.Recordset = rs4 Text4(0).DataField = "Currency" Text4(1).DataField = "CurrCode" Case 5 Set Data1.Recordset = rs5 Text5(0).DataField = "CName" Text5(1).DataField = "CCode" End Select End Sub AND REMOVE statement with SSTab1.Tab from Form_load sub!!!!!!! This is just example... |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 6 Ответов: 7 |
Профиль | Цитата | #6 | Добавлено: 21.08.02 11:29 |
2 LIS: unfortunately, an error message disappeared but records are not shown in textboxes. Nevertheless, thank you for the answer. |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 2 Ответов: 3 |
Профиль | Цитата | #7 | Добавлено: 22.08.02 20:47 |
Private Sub SSTab1_Click(TabIndex As Integer) If SSTab1.Tab = 0 Then frm.Show vbModal Call OpenTabs(0) DataGridAll.Visible = True Else DataGridAll.Visible = False End If If SSTab1.Tab = 1 Then frm.Show vbModal Call OpenTabs(1) DataGrid1.Visible = True Else
DataGrid1.Visible = False End If If SSTab1.Tab = 2 Then frm.Show vbModal Call OpenTabs(2) DataGrid2.Visible = True Else
DataGrid2.Visible = False End If If SSTab1.Tab = 3 Then frm.Show vbModal Call OpenTabs(3) DataGrid3.Visible = True Else
DataGrid3.Visible = False End If If SSTab1.Tab = 4 Then frm.Show vbModal Call OpenTabs(4) DataGrid4.Visible = True Else
DataGrid4.Visible = False End If If SSTab1.Tab = 5 Then frm.Show vbModal Call OpenTabs(5) DataGrid5.Visible = True Else
DataGrid5.Visible = False End If If SSTab1.Tab = 6 Then frm.Show vbModal Call OpenTabs(6)
DataGrid6.Visible = True Else Adodc1.Visible = False DataGrid6.Visible = False End If If SSTab1.Tab = 7 Then frm.Show vbModal Call OpenTabs(7) DataGrid7.Visible = True Else
DataGrid7.Visible = False End If If SSTab1.Tab = 8 Then frm.Show vbModal Call OpenTabs(8) DataGrid8.Visible = True Else
DataGrid8.Visible = False End If If SSTab1.Tab = 9 Then frm.Show vbModal Call OpenTabs(9) DataGrid9.Visible = True Else
DataGrid9.Visible = False End If If SSTab1.Tab = 10 Then frm.Show vbModal Call OpenTabs(13) DataGrid13.Visible = True Else
DataGrid13.Visible = False End If If SSTab1.Tab = 11 Then frm.Show vbModal Call OpenTabs(12) DataGrid12.Visible = True Adodc1.Visible = True Else
DataGrid12.Visible = False End If End Sub Private Sub OpenTabs(x As Integer) Dim sql As String Dim cn As ADODB.Connection Dim rs As ADODB.Recordset On Error Resume Next Call SortBySel("INSRealtyFRКвартиры") Select Case x Case 0 Adodc1.RecordSource = "SELECT * From tblServiceRealty ORDER BY Цена" Case 1 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'квартира') And [Кол-воКомнат] = 1 ORDER BY Цена" Case 2 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'квартира') And [Кол-воКомнат] = 2 ORDER BY Цена" Case 3 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'квартира') And [Кол-воКомнат] = 3 ORDER BY Цена" Case 4 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'квартира') And [Кол-воКомнат] >= 4 ORDER BY Цена" Case 5 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'подселение') ORDER BY Цена" Case 6 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'дом') ORDER BY Цена" Case 7 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'офис') ORDER BY Цена" Case 8 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'производственно-складское помещение') ORDER BY Цена" Case 9 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'отдельностоящее строение') ORDER BY Цена" Case 13 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'торговое помещение') ORDER BY Цена" Case 12 Adodc1.RecordSource = "SELECT Код, Вид, Тип, Район, Площадь, Жилая, Кухня, План, [С/У], [Б/Л], Аг_во, Тлф, Улица, Цена, [Кол-воКомнат], Этаж, Этажность, Материал From tblServiceRealty Where (Тип = 'квартира') And [Кол-воКомнат] = 0 ORDER BY Цена" End Select Adodc1.Refresh End Sub DataGrid Это контролы Я использую АDODC |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 12 Ответов: 430 |
Профиль | Цитата | #8 | Добавлено: 22.08.02 21:19 |
2 krokus! Izwini no bolee newrazumitelnogo otweta ja ne widel... Razgowor to wed bil sowsem ne ob etom... Twoj kod wo perwih mojno umenshit raz w 5 kak minimum, slishkom mnogo lishnego. Wo wtorih ispolzowat Select-Case wmesto if. Izmenjat tolko whodashuju stroku sql i postawlat ee cherez peremennuju. Power mne , sam potom uwidish... Da i ADO s Access'owskimi bazami ne rabotaet... Wobschem ne ponjal ja chto eto bilo. Bez obid... |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 7 Ответов: 256 |
Профиль | Цитата | #9 | Добавлено: 23.08.02 01:06 |
To MAGNUS ! Dear friend ! You are absolutely wrong ! ADO is working with Access... I am using ADO to connect and retrieve info from a97/a2000 every day. So , if you need help ==> welcome.I can send to you small project. |
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 7 Ответов: 256 |
Профиль | Цитата | #10 | Добавлено: 23.08.02 03:48 |
Private Sub Option1_Click()
Adodc1.RecordSource = "select * from docspec" Adodc1.Refresh Text1.DataField = "specCode"
End Sub Private Sub Option2_Click() Adodc1.RecordSource = "select * from doctorid" Adodc1.Refresh Text1.DataField = "firstname"
End Sub This is just small example ... Replace option button with tabs and GOOD LUCK... I hope you assign different text box or labels for every field from DB ... And connection has to be: Provider=Microsoft.Jet.OLEDB.4.0 |
Номер ответа: 11 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 12 Ответов: 430 |
Профиль | Цитата | #11 | Добавлено: 23.08.02 14:14 |
Yes! Sorry! Tut ja mahu dal, zabil pro Jet prowajder, da rabotaet ono prekrasno! Chto j s Access u menja praktiki malo, tolko s Sql Server rabotaju! Budu powishat kwalifikaciju ! Thanks! |
Номер ответа: 12 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 7 Ответов: 256 |
Профиль | Цитата | #12 | Добавлено: 23.08.02 15:20 |
No problem... Good Luck... |
Страница: 1 |
|