Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
6 / 6 / 0
Регистрация: 11.03.2011
Сообщений: 65

Взаимодействие графических примитивов

12.04.2013, 09:05. Показов 1397. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно ли на VB6 создать программу в которой было бы реализовано в полной мере взаимодействие графических примитивов с привязанными к ним элементами и базой данных?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.04.2013, 09:05
Ответы с готовыми решениями:

Рисование надписей и графических примитивов
Как сделать возможным рисование на PictureBox, рисовать графические примитивы, надписи, другие изображения?

Нарисовать фигуру, состоящую из примитивов
Нужно написать программу в бейсике , которая выведет на экран фигуру , цвета можно использовать любые , заранее спасибо! извиняюсь что одна...

Отображение графических примитивов
не подскажите как нарисовать круг, треугольник и домик. Ищу в интернете не как не могу найти(

8
 Аватар для Апострофф
9908 / 3928 / 742
Регистрация: 11.10.2011
Сообщений: 5,908
12.04.2013, 09:25
Цитата Сообщение от Vlad_i_mirr Посмотреть сообщение
взаимодействие графических примитивов с привязанными к ним элементами и базой данных
А можно помедленнее, я записываюю. И поподробнее о взаимодействии и базе
1
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
12.04.2013, 09:28
На Vb6 можно написать все что угодно кроме драйверов.
1
6 / 6 / 0
Регистрация: 11.03.2011
Сообщений: 65
12.04.2013, 11:35  [ТС]
Цитата Сообщение от Апострофф Посмотреть сообщение
А можно помедленнее, я записываюю. И поподробнее о взаимодействии и базе
например, рисую несколько примитивов (прямоугольники или сложные фигуры), к ним привязываю 1 или несколько елементов. Потом кликаю на примитив и вижу какие елементы к нему привязаны и в каком количестве. Это если коротко. Записал?
0
 Аватар для Апострофф
9908 / 3928 / 742
Регистрация: 11.10.2011
Сообщений: 5,908
12.04.2013, 11:46
Как рисуете - в дизайнере кладете Shape (или что) или программно?
Как привязываете?
Какие элементы?
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
12.04.2013, 12:07
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Vlad_i_mirr Посмотреть сообщение
например,
Не надо слов. Просто выложите пример своего кода ( а лучше весь проект) - это самый верный способ получить ответ на свой вопрос.
1
6 / 6 / 0
Регистрация: 11.03.2011
Сообщений: 65
12.04.2013, 16:04  [ТС]
Ни проекта ни кода еще нет, это идея которая существует в техническом задании. Примитив это сколько угодно угольная фигура замкнутого типа которую будет чертить пользователь в программе (по примеру автокад или архикад) и привязывать (индексно) к ней сколько угодно ранее созданных елементов которые пользователь создаст в программе и которые будут записаны в базу и т.д. По этому я и спрашивал, возможно ли взаимодействие примитивов и базы данных (например аксес).

Вопрос №2
Кто нибудь из Вас занимается разработкой приложений на заказ?
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
12.04.2013, 16:20
Цитата Сообщение от Vlad_i_mirr Посмотреть сообщение
Кто нибудь из Вас занимается разработкой приложений на заказ?
Я.

Цитата Сообщение от Vlad_i_mirr Посмотреть сообщение
Ни проекта ни кода еще нет, это идея которая существует в техническом задании. Примитив это сколько угодно угольная фигура замкнутого типа которую будет чертить пользователь в программе (по примеру автокад или архикад) и привязывать (индексно) к ней сколько угодно ранее созданных елементов которые пользователь создаст в программе и которые будут записаны в базу и т.д. По этому я и спрашивал, возможно ли взаимодействие примитивов и базы данных (например аксес).
Возможно.
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
12.04.2013, 18:23
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Вот например один из способов хранить фигуры в БД:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
Private Type Point
    X As Single
    Y As Single
End Type
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
 
Private Function CreateShape(Pt() As Point, ParamArray B()) As Boolean
    Dim V As Variant, I As Long
    ReDim Pt(UBound(B) \ 2)
    For Each V In B
        If I And 1 Then Pt(I \ 2).Y = V Else Pt(I \ 2).X = V
        I = I + 1
    Next
    CreateShape = True
End Function
Private Function AddToDB(Pt() As Point) As Boolean
    On Error GoTo ERRSUB
    Dim Dat() As Byte
    ReDim Dat(UBound(Pt) * 8 + 7)
    CopyMemory Dat(0), Pt(0), UBound(Pt) * 8 + 8
    DB.Recordset.AddNew
    DB.Recordset.Fields("Vtx").Value = UBound(Pt) + 1
    DB.Recordset.Fields("Data").Value = Dat
    DB.Recordset.Update
    AddToDB = True
    Exit Function
ERRSUB:
    MsgBox "Ошибка записи в БД"
End Function
Private Function LoadFromBD(Pt() As Point) As Boolean
    On Error GoTo ERRSUB
    Dim Dat() As Byte, I As Long
    I = DB.Recordset.Fields("Vtx")
    If I <= 0 Then MsgBox "Ошибка в формате данных: неверное число вершин фигуры": Exit Function
    Dat() = DB.Recordset.Fields("Data")
    If UBound(Dat) <> (I - 1) * 8 + 7 Then MsgBox "Ошибка в формате данных: неверные данные фигуры": Exit Function
    ReDim Pt(I - 1)
    CopyMemory Pt(0), Dat(0), UBound(Pt) * 8 + 8
    LoadFromBD = True
    Exit Function
ERRSUB:
    MsgBox "Ошибка чтения из БД"
End Function
Private Sub DrawShape(Pt() As Point)
    Dim I As Long
    picDisplay.Cls
    picDisplay.CurrentX = -2
    picDisplay.CurrentY = -2
    picDisplay.Print "Число вершин: " & UBound(Pt) + 1
    picDisplay.CurrentX = Pt(0).X
    picDisplay.CurrentY = Pt(0).Y
    For I = 0 To UBound(Pt)
        picDisplay.Line -(Pt(I).X, Pt(I).Y)
    Next
    picDisplay.Line -(Pt(0).X, Pt(0).Y) 'Замыкаем
    picDisplay.Refresh
End Sub
Private Sub DB_Error(ByVal ErrorNumber As Long, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, fCancelDisplay As Boolean)
    fCancelDisplay = True
End Sub
Private Sub DB_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
    Dim Pt() As Point
    If pRecordset.EOF Or pRecordset.BOF Then Exit Sub
    If LoadFromBD(Pt) Then DrawShape Pt
End Sub
Private Sub Form_Load()
    On Error GoTo ERRSUB
    Dim Pt() As Point
    Me.Show
    DB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
        App.Path & "\DataBase.mdb;Mode=ReadWrite;Persist Security Info=False"
    DB.RecordSource = "SELECT * FROM Figures"
    DB.Refresh
    ' Создание фигур и добавление в БД
'    CreateShape Pt, -1, -1, 1, -1, 1, 1, -1, 1    ' Прямоугольник
'    AddToDB Pt
'    CreateShape Pt, 0, -1, 1, 1, -1, 1            ' Треугольник
'    AddToDB Pt
'    CreateShape Pt, 0, -1, 1, 0, 0, 1, -1, 0      ' Ромб
'    AddToDB Pt
'    CreateShape Pt, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd, Rnd
'    AddToDB Pt
    Exit Sub
ERRSUB:
    MsgBox "Ошибка подключения к базе данных", vbCritical: End
End Sub
Миниатюры
Взаимодействие графических примитивов  
Вложения
Тип файла: rar DB-binary.rar (11.9 Кб, 9 просмотров)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.04.2013, 18:23
Помогаю со студенческими работами здесь

Рисование графических примитивов
Задача такова: Необходимо нарисовать ромб. Ну а почему бы и нет? Можно и треугольник (не квадрат с прямоугольником, там просто очень)....

Отображение графических примитивов
не подскажите как нарисовать круг, треугольник и домик. Ищу в интернете не как не могу найти(

Анимация графических примитивов
Всем привет. Передо мной стоит задача сделать простейшую анимацию 3-х овалов, но увы я никак не могу разобраться как сделать в Java то что...

Использование графических примитивов
Используя графические примитивы,задав параметры пера и кисти нарисовать щенка! Скажите как это можно сделать?

Рисование графических примитивов
Приложение, которое читает данные из файла о координатах и размерах различных графических примитивов (отрезок, прямоугольник, эллипс,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru