|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Для кого-то этот вопрос покажется простым, но меня он поставил в тупик. Как программно добавить на форму фундаментальные классы в моем случае используется Navigation Toolbar. Или создать Если его сразу же добавить на форму, то все работает но при перезапуске этой формы выходят ошибки несоответствия типов. Поэтому хочу его донастроить под себя. Помогите ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 10:15 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29, С этими инструментами знакомы? AddObject Method PEMSTATUS( ) Function VARTYPE( ) Function ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 11:12 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Знаком на начальном уровне ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 11:59 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29Знаком на начальном уровне Для PEMSTATUS обратить внимание на nAttribute = 5 MSDNDefined property, event, method, or object. If the property, event, method, or object exists for oObjectName or cClassName, PEMSTATUS( ) returns a logical True (.T.). Otherwise, or for hidden native properties, PEMSTATUS( ) returns a logical False (.F.). ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 12:10 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Пока не совсем понял, разбираюсь На основании Фунд класса Navigation Toolbar создал свой класс и пытаюсь его запустить(добавить на форму). pfGrid.AddObject('navigatormy', 'navigatormy.vcx') oNavToolbarClass1 =Newobject('navigatormy', 'navigatormy.vcx') но выдаёт ошибку «определение класса не найдено» Что-то я делаю не так. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 12:51 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
SET CLASSLIB TO "C:\Путь\ИмяФайла.vcx" additive ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 12:58 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29 Код: plaintext
И все-таки не надо путать класс и библиотеку, даже если в библиотеке один класс. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 13:00 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
FfffffffffffffffSET CLASSLIB TO "C:\Путь\ИмяФайла.vcx" additive Я Исправил SET CLASSLIB TO но терерь ошибка - псевдоним уже используется. Привожу весь код запуска формы. Parameters dataAdres, nameform Close Databases Do Form fGrid Name pfGrid With dataAdres Linked _Screen.Caption ='реализация '+nameform pfGrid.GridDataT.Width=pfGrid.Width-5 pfGrid.GridDataT.Height=pfGrid.Height-30 SET CLASSLIB TO "C:\sevasever\FoxPro\trade8\class\navigatormy.vcx" additive pfGrid.AddObject('navigatormy', 'navigatormy.vcx') ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 14:31 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
AmKadAlexandr29 Код: plaintext
И все-таки не надо путать класс и библиотеку, даже если в библиотеке один класс. Согласен но как программа узнает откуда и какой класс добавить. исправил на pfGrid.AddObject('navigatormy', 'container')- не правильно а как должно быть ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 15:01 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Метод AddObject() предполагает, что нужная библиотека классов (файл VCX) предварительно подключена через настройку SET CLASSLIB Метод NewObject() в качестве 3 параметра может явно указать имя библиотеки классов (файла VCX) из которого надо взять определение указанного класса. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 15:27 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Я исправил в соответствии с полученными рекомендациями, SET CLASSLIB TO "C:\sevasever\FoxPro\trade8\class\navigatormy.vcx" additive pfGrid.AddObject('navigatormy1', 'navigatormy', ) но теперь ошибка "Определение класса не найдено" Всем большое спасибо за помощь, а то ковыряюсь в этой проблеме а единой цельной картины так и нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 16:16 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29Я исправил в соответствии с полученными рекомендациями, SET CLASSLIB TO "C:\sevasever\FoxPro\trade8\class\navigatormy.vcx" additive pfGrid.AddObject('navigatormy1', 'navigatormy', ) но теперь ошибка "Определение класса не найдено" Всем большое спасибо за помощь, а то ковыряюсь в этой проблеме а единой цельной картины так и нет. А теперь вопрос на засыпку, есть ли класс navigatormy в библиотеке navigatormy.vcx? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 16:21 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29Для кого-то этот вопрос покажется простым, но меня он поставил в тупик. Как программно добавить на форму фундаментальные классы в моем случае используется Navigation Toolbar. Или создать Если его сразу же добавить на форму, то все работает но при перезапуске этой формы выходят ошибки несоответствия типов. Поэтому хочу его донастроить под себя. Помогите Да блин вопрос яйца Ломаного не стоит. Метод AddObject() конечно же. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2010, 23:23 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
AmKadAlexandr29Я исправил в соответствии с полученными рекомендациями, SET CLASSLIB TO "C:\sevasever\FoxPro\trade8\class\navigatormy.vcx" additive pfGrid.AddObject('navigatormy1', 'navigatormy', ) но теперь ошибка "Определение класса не найдено" Всем большое спасибо за помощь, а то ковыряюсь в этой проблеме а единой цельной картины так и нет. А теперь вопрос на засыпку, есть ли класс navigatormy в библиотеке navigatormy.vcx? Почему нет, если в окне проекта в группе Classes есть класс с именем navigatormy и путем C:\sevasever\FoxPro\trade8\class\navigatormy.vcx ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2010, 09:07 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Код SET CLASSLIB TO "C:\Program Files\Microsoft Visual FoxPro 9\Ffc\_table2.vcx" additive pfGrid.AddObject('navigatormy1', '_navtoolbarclass') работает. И если скопировать файлы _table2.vcx и _base.vcx в проект, соответственно переписав пути в коде - работает. Но почему не работает если я, через Галерею компонентов, добавляю в проект. На вопрос как отвечаю - создать новый класс. и к нему соответственно обращаюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2010, 12:40 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29Но почему не работает если я, через Галерею компонентов, добавляю в проект По той причине, что пути доступа к файлу, записанные в проекте "не видны" при выполнении программы. Эти пути доступа надо указать явно . Либо через SET PATH, либо (что хуже) через полный путь в команде SET CLASSLIB Как правило, используют файл конфигурации Config.FPW для того, чтобы указать пути доступа. Причем файл конфигурации делается один на этап разработки и другой для готового EXE. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2010, 14:35 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Использую и SET PATH и SET CLASSLIB но не работает, сейчас повторно обыграл ситуацию Ошибка Определение класса _TBRNavigation не найдено Решение проблемы -скопировать в ручную, в папку проекта необходимые библиотеки И уже их править. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2010, 15:43 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29Использую и SET PATH и SET CLASSLIB но не работает, Это такое сообщение об ошибке?сейчас повторно обыграл ситуацию Ошибка Определение класса _TBRNavigation не найдено Решение проблемы -скопировать в ручную, в папку проекта необходимые библиотеки И уже их править.Это очень плохое решение. Set classlib выставлен? Или надеетесь без него обойтись? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2010, 19:04 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
проходящий.Alexandr29Использую и SET PATH и SET CLASSLIB но не работает, Это такое сообщение об ошибке? Извиняюсь за столь долгие ответы В коде основного файла прописал Set Path To Dbf,User,Forms,Reports,Info,CLASS,GRAPHICS,PROGS А при запуске формы SET CLASSLIB TO "C:\sevasever\FoxPro\trade8\class\navigatormy.vcx" additive pfGrid.AddObject('navigatormy1', 'navigatormy') проходящий.Alexandr29 Решение проблемы -скопировать в ручную, в папку проекта необходимые библиотеки И уже их править.Это очень плохое решение. Set classlib выставлен? Или надеетесь без него обойтись? У меня работает, но решение не правильное а как правильно не знаю Да и исправить ошибку не получается ошибка- при повторном запуске pfGrid. В классе _table2.vcx В _navtoolbarclass объект tmrCheck Toolbar на процедуру Timer при исполнении строк THIS.Parent.oToolbar.Top = THIS.Parent.nLastTop THIS.Parent.oToolbar.Left = THIS.Parent.nLastLeft Пытается присвоить логические значения вместо числовых. Но добавить условие проверки свойства значения у меня не получилось От сюда вопрос: Как редактировать класс? Я понимаю вопрос пространственный, но поэтому и расписываю ситуацию. Если что не так объяснил не обижайтесь, задавайте вопросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2010, 12:33 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Alexandr29 Но добавить условие проверки свойства значения у меня не получилось Выше я приводил функцию Vartype, которую ты видимо проигнорировал. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2010, 12:53 |
|
фундаментальные классы
|
|||
---|---|---|---|
#18+
Ага - PEMStatus и GetPem уже в хелпе замазали синим фломастером ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2010, 13:09 |
|
|
start [/forum/topic.php?fid=41&msg=36790011&tid=1585037]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
others: | 348ms |
total: | 494ms |
0 / 0 |