Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: MS Tabbed Dialog Control Добавлено: 20.08.02 16:16  

Автор вопроса:  Alba

Занчит, использую этот самый контрол (панели со вкладками):

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
Автор ответа:
 MAGNUS



Вопросов: 12
Ответов: 430
 Профиль | | #1 Добавлено: 20.08.02 17:38

A problema ne w etoj procedure, smotri  SStab1_Click().

IMHO Form_Load tut neprichem

Ответить

Номер ответа: 2
Автор ответа:
 LIS



Вопросов: 7
Ответов: 256
 Профиль | | #2 Добавлено: 20.08.02 18:37

How many tabs do you have?

Remember , tab started from 0!!!!

Ответить

Номер ответа: 3
Автор ответа:
 Alba



Вопросов: 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
Автор ответа:
 MAGNUS



Вопросов: 12
Ответов: 430
 Профиль | | #4 Добавлено: 20.08.02 21:13

Ja tebe goworu posmotri Click i BeforeClick. Oshibka gde-to tam! Suda po opisaniju takaja oshibka mojet wiskochit kogda zabiwaesh gde to postawit  "SET" pered ustanowkoj swojstwa.Naprimer esli ti ispolzuesh peremennuju dla powtornogo ispolzowanija kakogo nibud klassa.

Ответить

Номер ответа: 5
Автор ответа:
 LIS



Вопросов: 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
Автор ответа:
 Alba



Вопросов: 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
Автор ответа:
 krokus



Вопросов: 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
Автор ответа:
 MAGNUS



Вопросов: 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
Автор ответа:
 LIS



Вопросов: 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
Автор ответа:
 LIS



Вопросов: 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;Data Source=C:\careDir\careMDB.mdb;Persist Security Info=False

Ответить

Номер ответа: 11
Автор ответа:
 MAGNUS



Вопросов: 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
Автор ответа:
 LIS



Вопросов: 7
Ответов: 256
 Профиль | | #12 Добавлено: 23.08.02 15:20

No problem...

Good Luck...

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам