Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Kаким образом можно считать количество открытых до 
:(
    Опции темы
Aleksandr
Дата 10.12.2003, 02:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 4.12.2003

Репутация: нет
Всего: нет



Собственно, сабж, господа. Проблема в том, что когда я считываю данные из файла в дочернюю форму (идет обращение к frmName.ActiveForm.MSFlexGrid, то есть к активному дочернему окну), то когда ее нет (дочерней формы) у меня выдается ошибка, что не к чему, мол, обращаться.
PM MAIL   Вверх
Aleksandr
Дата 15.12.2003, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 4.12.2003

Репутация: нет
Всего: нет



С тем разобрался, но появилась другая проблема.

Теперь вот надо узнать номер открытой формы или имя...
Как?
Суть в чем: хочу сохранить данные из MSFlexGrid в файл.
Как я все это организовываю:

'======Объявляю свой тип переменных====

Private Type CyberyaTable
CellText As String 'содержимое ячейки
CellAlignment As Integer 'хранит значение выравнивания текста в ячейке (по левому краю, по центру, по правому краю)
CellFontName As String 'содержит имя шрифта, который будет использоваться в ячейке
CellFontType(1 To 4) As Boolean 'массив, содержащий информацию о типе шрифта (жирный, наклонный и т.д.)
CellFontSize As Integer 'хранит в себе размер шрифта
CellCeWidth As Integer 'хранит ширину ячеек
CellCeHeight As Integer 'хранит высоту ячеек
End Type

'======Объявляю переменные и массивы========
Private cTable(1 To 255, 1 To 24) As CyberyaTable 'Массив, содержащий в себе информацию о каждой ячейке в таблице
Private cTableVar As CyberyaTable 'Временная переменная для внесения информации в ячейку
Private cTableTemp As CyberyaTable 'Временная переменная для считывания информации из ячейки

'======Конец объявления переменных=======

'======Вот идет сохранение=======
'Процедура сохранения таблицы в файл
Sub TableSave()
'идет проверка на совпадение имен сохраняемого файла с существующими, если таковые есть
If Len(frmTableEditMDI.strPathTemp) = 0 Then
frmSaveAs.Show 1, frmTableEditMDI
Else
If frmTableEdit.flagOfKolvoZapuskov = True Then
Open "temp.tmp" For Binary As #2 'Создаем временный файл

'=====Вот здесь у меня затык происходит, но о нем ниже=====
Put #2, , cTable
'=====Вот здесь у меня затык происходит=====

If frmSaveAs.flagOfExictingFile = False Then
Kill frmTableEditMDI.strPathTemp 'удаляем его
End If
Close #2 'закрываем временный файл
Name "temp.tmp" As frmTableEditMDI.strPathTemp 'переименовываем временный файл в редактируемый
End If
End If
End Sub

В общем, в чем заключается проблема. Проблема в том, что при перемещении по таблице я всегда считываю данные о ячейке в переменную моего типа, а потом эту перменную вношу в массив, опять же моего типа с индексами row и col, т.е.:
cTable(frmTableEditMDI.ActiveForm.fxgTable.Row, frmTableEditMDI.ActiveForm.fxgTable.Col)

Все пока идет ок. В каждой дочерней форме есть свой массив пользовательского типа и из него данные нормально считываются и заносятся. НО! При сохранении, данные записываются в файл из массива, принадлежащего самой первой форме, а не активной. Нужно, чтобы данные хотя бы записыались во временный массив, но объявить его Public я не могу, поскольку он пользоавтельского типа. Что делать?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0422 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.