Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
10 / 10 / 5
Регистрация: 30.12.2010
Сообщений: 379

Не работает рисование мышью

09.04.2011, 00:10. Показов 2573. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я использую библиотеку "Future Library 3.50" для работы мыши.
Вот программа на тему мыши:

QBasic/QuickBASIC
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
REM $INCLUDE: 'future.bi'
Set640x480 8'set 640x400 svga screen
FOR I% = 0 TO 255 'copy mouse shape DATA into a string
READ C%
C$ = C$ + CHR$(C%)
NEXT
 
 
Future.MouseShape SADD(C$), VARSEG(C$)'parse DATA string to the mouse
SetMouseMaskColor 0 'set transparent color to 0
Future.MouseOn 'turn on svga mouse
 
1 :
 
IF STR$((Future.MouseB AND 1) = 1) = "-1" THEN
BEEP
END IF
 
IF STR$((Future.MouseB AND 2) = 2) = "-1" THEN
BEEP
END IF
 
Future.PRINT 0, 0, "Pos X:" + STR$(Future.MouseX) + " ", 1, 0
Future.PRINT 0, 16, "Pos Y:" + STR$(Future.MouseY) + " ", 2, 0
Future.PRINT 0, 32, "ButtonL:" + STR$((Future.MouseB AND 1) = 1) + " ", 4, 0
Future.PRINT 0, 48, "ButtonR:" + STR$((Future.MouseB AND 2) = 2) + " ", 5, 0
Future.UpdateMouse      'update mouse
IF INKEY$ <> CHR$(27) THEN GOTO 1
Future.MouseOff
ReSetScreen
 
DATA 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0
DATA 1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0
DATA 1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0
DATA 1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0
DATA 1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
DATA 1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0
DATA 1,1,1,1,0,0,1,1,0,0,0,0,0,0,0,0
DATA 1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,0
DATA 1,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0
DATA 1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0
DATA 0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0
DATA 0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0
DATA 0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0
DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0
DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1
DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1
Проблема в том что фон по которому бегает мышка при таком раскладе пуст. Там только 4 надписи. А мне нужно чтоб был рисунок. Я взял и после строк
QBasic/QuickBASIC
1
2
C$ = C$ + CHR$(C%)
NEXT
написал screen 12 и свой рисунок. Так после того как я написал screen 12 мышка и надписи стали огромны. Подскажите, как это исправить.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.04.2011, 00:10
Ответы с готовыми решениями:

Рисование мышью
Всем привет. Написал прогу для рисования мышью (пока только прямые линии) на c++ (MS VS 2005). Рисуется так: нажал клавишу мыши, передвинул...

Рисование мышью
Как сделать так чтобы при зажатой клавиши мышки ведя по форме за курсором появлялась линия? я получаю координаты курсора(через событие ...

Рисование на Canvas мышью
Как можно реализовать рисование мышью)как в паинте что бы можно было рисовать?мне бы идею,я уже реализовал одну идею с помощью отлавливать...

12
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
09.04.2011, 11:53
Вы прикалываетесь что-ли?

Подскажите, как это исправить.
Прочитать много литературы и понять что вы вообще творите... А творите вы полнейшый бред, зачем вы пишете SCREEN 12, когда вы подключаете стороннюю библиотеку, заточенную под VESA???
Вы решили потыкать пальцем в небо, ну тыкайте наздоровье развлекайтесь, зачем форум захламлять? Откройте хотя бы файл декларации процедур, посмотрите сколько там всего, нет желания прочитать документацию, посмотреть примеры? Ну тыкайте в небо...
0
10 / 10 / 5
Регистрация: 30.12.2010
Сообщений: 379
09.04.2011, 14:23  [ТС]
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
Вы прикалываетесь что-ли?
Нет, я не над кем не прикалываюсь. Этот форум я так понимаю только для программистов с двадцатилетним стажем!? Если кто то не спец в этом и не понимает чего то простого его надо сразу облаивать. Или вы хотите показать какой вы типа крутой. Нет, ваше сообщение не признак крутости, а признак хамства. Ну чтож, не хотите отвечать нормально, так зачем отвечать вообще? Да и начхать мне, поищу себе другой форум, где модераторы поприличней.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
09.04.2011, 15:45
Нет, ваше сообщение не признак крутости, а признак хамства.
Начну пожалуй с того, что моё сообщение не несло цель показать "крутость".
Я возмущён такими людьми как вы, объясню почему:
  • Вы по невозможности написать своё, взяли чужое, хотите это использовать, но в силу того, что вам лень, вы обращаетесь на форум, вместо того, чтобы прочитать мануал.
  • Когда вам говорят прочитать документацию, это означает, что нужно её прочитать, а не пытаться модифицировать чужие исходники, при ПОЛНОМ непонимании того, как они работают и как работают сходные программы.
  • Удручает то, что вы не желаете понять вышесказанное, обвиняете меня в хамстве и полагаете что на другом форуме вас за это будут лелеять и объяснять вам весь функционал какой-то там библиотеки, которую кто-то вам посоветовал, чтобы что-то(непонятно что) сделать.

Я не буду с вами припираться, хотите другой форум пожалуйста. Тут не учат, а помогают, нет никаких гарантий, что ваш вопрос будет решён, читайте форумные правила. Помощь может заключаться в том, что вас направят в нужное русло, а не напишут за вас.
Ваш вопрос решается элементарно:
  1. Прочитать документацию по библиотеке
  2. Посмотреть какие графические форматы она поддерживает
  3. Изучить выбранный формат
  4. Написать код
1
PB
Просто прогер
1292 / 1079 / 13
Регистрация: 13.03.2009
Сообщений: 2,502
09.04.2011, 16:15
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
Тут не учат, а помогают, нет никаких гарантий, что ваш вопрос будет решён
Добавлю от себя.
Если нужны гарантии, то нужно создавать тему здесь https://www.cyberforum.ru/freelance/
И может быть кто-то через личку, аську или др. способом, разжует все тонкости использования этой библиотеки.
1
10 / 10 / 5
Регистрация: 30.12.2010
Сообщений: 379
09.04.2011, 21:19  [ТС]
>Quiet Snow<, за помощь большое спасибо, но ещё одно НО не относящиеся к QB, вы написали:
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
Вы по невозможности написать своё, взяли чужое, хотите это использовать, но в силу того, что вам лень, вы обращаетесь на форум, вместо того, чтобы прочитать мануал.
Что значит лень, мне совершенно не лень, я не прошу некого за меня писать. Я всё напишу сам. Моя просьба заключалась в том, чтоб вы не написали за меня, а в 2 словах объяснили, в чём моя ошибка и повода для возмущения мной я совершенно не вижу. Но это уже неважно.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
09.04.2011, 23:13
а в 2 словах объяснили, в чём моя ошибка
Тяжело объяснить в двух словах материал нескольких толстых книг и нескольких эпох компьютерной графики, эти знания добываются усиленным изучением "на износ", а не способностью шерстить по форумам.

мне совершенно не лень
Отлично, порядок действий у вас есть.

Что значит лень
К вашему сведению лень заключается даже в том, чтобы взять "готовенькое" и нифига самому не делать, вы наверное даже и приблизительно не представляете сколько люди(настоящие профи) писали эти библиотеки. За вас уже всё сделано, вам не нужно думать как вывести тот или иной примитив, как копировать VESA буфер в реальном режиме процессора и какие проблемы с этим возникают(а они возникают и неслабые), вам не нужно думать о взаимодействии с системными устройствами(та же мышь и клавиатура закодены через перехваты прерываний для вашего удобства) вам не нужно думать об оптимизации(это крайне деликатная область в программировании), вы можете забыть про программирование DMA каналов, для разных версий подсистемы Sound Blaster(а версий дофигище), DSP чипов и аппаратных прерываний(для этого нужно знать работу контроллера прерываний), не говоря уже о самом микшере, вы с лёгкостью можете использовать любой графический режим не написав ни строки кода на ассемблере и всё это будет работать быстро, красиво и безглючно(правда не всегда). Но вот незадача - писали это НЕ ВЫ, поэтому потрудитесь хотябы узнать как это работает, прежде чем говорить следующее:
Я всё напишу сам.
потому что уже не пишете сами, за вас уже 99.5% программы написано.))) Может быть сей факт не столь очевиден или вы считаете это как должное, просто знайте - за вас выполнена колоссальная работа, люди может не спали, не ели))) писали эти функции, а вы хоп и подключили одной строкой. Поиск лёгких путей - это определённо лень, я принципиально не использую чужие библиотеки, хотя когда раньше писал на паскале использовал и целую тучу(и ukeyb и smix и xlib и другие...), да где-то действительно была лень, по причине того, что либо не мог написать сам, либо очковал, смотря в книгу по ассемблеру, просто потому что это долго, тяжело и требует особых навыков+много IQ.

в чём моя ошибка и повода для возмущения мной я совершенно не вижу.
Уже расписал по пунктам, понятно и доходчиво. А ошибка ваша в том, что вы пытаетесь использовать функции VGA адаптера, установив режим SVGA адаптера, с совершенно другой структурой памяти(4 битовые плоскости заместо одной, не битовой, а равной значению глубины цвета в байтах), при всём при этом, что вы считаете "рисунком" из вашего поста так и не понятно, а понятие это сильно растяжимое, бывают векторные, бывают растровые(которые бывают ещё и анимированные). Я возмущён, нет, я негодую, полный "ласосинг"...
0
10 / 10 / 5
Регистрация: 30.12.2010
Сообщений: 379
10.04.2011, 02:50  [ТС]
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
за вас выполнена колоссальная работа, люди может не спали, не ели))) писали эти функции, а вы хоп и подключили одной строкой.
Да, я благодарен тем, кто написал эту функцию. Но они писали это не только для себя раз выложили в интернет совершенно бесплатно. Когда написанную программу выставляют в интернет, то обычно это делают, чтобы люди пользовались. Вы говорите, что пользоваться другим совершенно бесплатно это лень. Тогда скажите, все ли программы, доставшиеся вам бесплатно написаны вами? Вы можно подумать, написали и браузер, через, который читаете это сообщение.
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
Я возмущён, нет, я негодую, полный "ласосинг"...
А я возмущён вами, что вы отпускаете такие реплики в адрес человека, который лично вам не сделал нечего плохого!
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
10.04.2011, 12:17
Но они писали это не только для себя раз выложили в интернет совершенно бесплатно.
Выложить могли не создатели, я не уверен в бесплатности оного.

Вы говорите, что пользоваться другим совершенно бесплатно это лень.
Вообще то я имел в виду программирование конкретных вещей, а не просто пользоваться. Программы пишут для того чтобы ими пользоваться, это очевидно.

А я возмущён вами, что вы отпускаете такие реплики в адрес человека, который лично вам не сделал нечего плохого!
А нечего возмущаться, я про вас ничего плохого и не говорил, я просто вами возмущаюсь, ибо есть чем.
0
PB
Просто прогер
1292 / 1079 / 13
Регистрация: 13.03.2009
Сообщений: 2,502
10.04.2011, 13:49
Цитата Сообщение от Илья01 Посмотреть сообщение
выложили в интернет совершенно бесплатно
Знаете, когда выкладывают (или помогают) бесплатно, то не дают ни каких гарантий - не нравится - ищите другую библиотеку.
Обычно бесплатно выкладывают как есть, а если очень нужно, то разобраться с тем что есть, как правило проще, чем писать с нуля.
0
10 / 10 / 5
Регистрация: 30.12.2010
Сообщений: 379
10.04.2011, 14:04  [ТС]
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
выложить могли не создатели, я не уверен в бесплатности оного.
Я нашёл это не на каком нибудь торренте, а на чуть ли не первой ссылки в Яндексе.
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
А нечего возмущаться, я про вас ничего плохого и не говорил, я просто вами возмущаюсь, ибо есть чем.
Я понимаю, что вы считаете меня лентяем и то что я использую чужие библиотеки это плагиат. Но лично я когда вижу лентяя, который ко мне не лезет со своей ленью я не подхожу к нему, а пытаюсь с ним поменьше общаться. Я вопрос задал на форуме, а не вам личным сообщением, я не навязывал вам свой вопрос. Зачем же вам отвечать на него когда у вас такое отвращение ко мне? Многие люди, которых я знаю хотят людям, которые им не нравятся это сообщить. И я этих людей некогда не понимал.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
10.04.2011, 14:17
то не дают ни каких гарантий - не нравится - ищите другую библиотеку.
PB, это верно, но я как бы ему уже намекнул, что дело далеко не в библиотеке, т.к. позапускал уже примеры, работает она более чем отлично. Заодно понял, что мой широкоформатник через стандартный аналоговый выход не пашет на режимах с разрешением выше 640x480, скорее всего из-за частоты развёртки(надо ещё цифровой проверить, по идее должен работать). Обрубается потихоньку совместимость моников со старыми VESA BIOS, неаппетитно всё это.
0
10 / 10 / 5
Регистрация: 30.12.2010
Сообщений: 379
10.04.2011, 14:25  [ТС]
Цитата Сообщение от PB Посмотреть сообщение
когда выкладывают (или помогают) бесплатно, то не дают ни каких гарантий - не нравится - ищите другую библиотек
Цитата Сообщение от >Quiet Snow< Посмотреть сообщение
дело далеко не в библиотеке, т.к. позапускал уже примеры, работает она более чем отлично
Я когда создавал эту тему я не просил сказать как переделать под меня библиотеку, я спрашивал как переделать мой код под библиотеку. Вы мне это уже и ответили.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.04.2011, 14:25
Помогаю со студенческими работами здесь

Рисование линии мышью
Собственно не могу понять, почему не работает. Код взял с msdn. Подумал, что, может, ручка белого цвета, но нет. HPEN hpn; LRESULT...

Canvas, рисование мышью
Добрый вечер, товарищи. Собственно, не так давно я решил познакомиться поближе с JavaFX, и в качестве пробного проекта выбрал простую...

Рисование линии мышью
При нажатии клавиши мыши должно начаться рисование линии: if (InputEvent.BUTTON1_MASK) { Graphics g =...

Windows Forms — Рисование мышью
Составил процедуру, связанную с событием MouseMove, с помощью которого можно рисовать на форме: procedure Form1.Drawing(sender:...

Рисование круга мышью на PictureBox
Доброго времени суток, в ходе обучения возник вопрос &quot;а как сделать круг&quot; из имеющиеся функции DrawEllipse - необходимо для задания. ...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru