CINXE.COM
Рисование на QGraphicsScene при зажатой кнопке мыши
<!DOCTYPE html><html lang="en" itemscope itemtype="http://schema.org/QAPage"><head><!-- Yandex.RTB --><script>window.yaContextCb=window.yaContextCb||[]</script><script src="https://yandex.ru/ads/system/context.js" async></script><!-- Yandex.RTB --><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="apple-touch-icon-precomposed" sizes="57x57" href="/static/images/favicons/apple-touch-icon-57x57.png" /><link rel="apple-touch-icon-precomposed" sizes="72x72" href="/static/images/favicons/apple-touch-icon-72x72.png" /><link rel="apple-touch-icon-precomposed" sizes="114x114" href="/static/images/favicons/apple-touch-icon-114x114.png" /><link rel="apple-touch-icon-precomposed" sizes="120x120" href="/static/images/favicons/apple-touch-icon-120x120.png" /><link rel="apple-touch-icon-precomposed" sizes="144x144" href="/static/images/favicons/apple-touch-icon-144x144.png" /><link rel="apple-touch-icon-precomposed" sizes="152x152" href="/static/images/favicons/apple-touch-icon-152x152.png" /><link title="EVILEG - Social network of programmers" rel="alternate" type="application/rss+xml" href="/en/feed/" /><link title="EVILEG - Forum" rel="alternate" type="application/rss+xml" href="/en/forum/feed/" /><title>Рисование на QGraphicsScene при зажатой кнопке мыши</title><meta property="og:title" content="Рисование на QGraphicsScene при зажатой кнопке мыши" /><meta property="og:type" content="article" /><meta property="og:url" content="https://evileg.com/en/forum/topic/218/" /><meta property="og:image" content="https://evileg.com/static/images/favicons/favicon.ico" /><meta property="og:site_name" content="EVILEG" /><meta name="google-site-verification" content="vVTpO8SvQTo0QU2hU-zDTBHgHzqr2CGx7ACdQHPlLes" /><meta name="yandex-verification" content="c58ddaad8c500539" /><meta name="wot-verification" content="5e851b19f7a76433f3dc"/><meta name="description" content="Рисование на QGraphicsScene при зажатой кнопке мыши. Есть QGraphicsScene в которой происходит рисование на загруженной в нее картинке. Нужно дать пользователю возможность рисовать линию из точки А в точку В только при зажатой левой кнопке мыши. Рисовани"/><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous"><link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css" rel="stylesheet" ><link href="/static/css/custom.css?9" rel="stylesheet"><script src="/static/js/jquery-3.3.1.min.js"></script><script src="https://cdn.jsdelivr.net/npm/js-cookie@2/src/js.cookie.min.js"></script><script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js" integrity="sha384-I7E8VVD/ismYTF4hNIPjVp/Zjvgyol6VFvRkX/vR+Vc4jQkC+hVqc2pM8ODewa9r" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script><script src="/static/js/global.js?27"></script><script type="application/ld+json">{"@context": "http://schema.org", "@type": "ItemList", "itemListElement": [{"@type": "SiteNavigationElement", "position": 1, "name": "EVILEG", "url": "/en/"}, {"@type": "SiteNavigationElement", "position": 2, "name": "Articles", "url": "/en/knowledge/"}, {"@type": "SiteNavigationElement", "position": 3, "name": "Forum", "url": "/en/forum/"}, {"@type": "SiteNavigationElement", "position": 4, "name": "Tests", "url": "/en/tests/"}, {"@type": "SiteNavigationElement", "position": 5, "name": "Share code", "url": "/en/sharecode/"}, {"@type": "SiteNavigationElement", "position": 6, "name": "Share code", "url": "/en/sharecode/create/"}, {"@type": "SiteNavigationElement", "position": 7, "name": "Write article", "url": "/en/knowledge/article/add/"}, {"@type": "SiteNavigationElement", "position": 8, "name": "Ask a question", "url": "/en/forum/create_topic/"}]}</script></head><body class="bg-light"><nav class="navbar navbar-expand-lg navbar-dark fixed-top bg-dark"><div class="container-xxl"><button class="navbar-toggler collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#mainNavbar" aria-controls="mainNavbar" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button><a class="navbar-brand ms-3 ms-lg-0" href="/en/">EVILEG</a><button class="btn btn-outline-secondary ms-auto d-block d-lg-none" type="button" data-bs-toggle="modal" data-bs-target="#menuModal" aria-controls="menuModal" title="Menu"><span class="bi bi-grid-3x3-gap-fill"></span></button><a class="btn btn-outline-secondary ms-2 d-block d-lg-none" href="/en/accounts/login/" title="Login"> Login </a><div class="navbar-collapse collapse" id="mainNavbar"><form role="search" action="/en/search/" method="get" class="mt-3 mt-lg-0"><input id="search" name="search" type="search" class="form-control" placeholder="Search..." title="Search"></form><ul class="navbar-nav ms-2 mb-2 mb-lg-0"><li class="nav-item"><a class="nav-link" href="/en/knowledge/">Articles</a></li><li class="nav-item"><a class="nav-link" href="/en/forum/">Forum</a></li><li class="nav-item"><a class="nav-link" href="/en/tests/">Tests</a></li><li class="nav-item"><a class="nav-link" href="/en/sharecode/">Share code</a></li><li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown" aria-expanded="false">EN</a><ul class="dropdown-menu"><a class="dropdown-item" href="/lang/ru/">Русский</a><a class="dropdown-item" href="/lang/uk/">Українська</a><a class="dropdown-item" href="/lang/en/">English</a><a class="dropdown-item" href="/lang/kk/">Қазақ</a><a class="dropdown-item" href="/lang/de/">Deutsch</a></ul></li></ul></div><button class="btn btn-outline-secondary ms-2 d-none d-lg-block" type="button" data-bs-toggle="modal" data-bs-target="#menuModal" aria-controls="menuModal" title="Menu"><span class="bi bi-grid-3x3-gap-fill"></span></button><a class="btn btn-outline-secondary ms-2 d-none d-lg-block" href="/en/accounts/login/" title="Login"> Login </a></div></nav><main class="container-xxl"><div class="row"><div class="col-12 col-lg overflow-hidden"><ul class="breadcrumb bg-light"><li class="breadcrumb-item"><a href="/en/"><i class="bi bi-house"><span class="d-none">EVILEG</span></i></a></li><li class="breadcrumb-item"><a href="/en/forum/">Forum</a></li><li class="breadcrumb-item"><a href="/en/forum/sections/">Sections</a></li><li class="breadcrumb-item"><a href="/en/forum/qt/">Qt</a></li><li class="breadcrumb-item active">Рисование на QGraphicsScene при зажатой кнопке мыши</li></ul><div itemprop="mainEntity" itemscope itemtype="http://schema.org/Question"><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8160668332851230" crossorigin="anonymous"></script><!-- EVILEG ADS TOP --><ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-8160668332851230" data-ad-slot="6001381692" data-ad-format="auto" data-full-width-responsive="true"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><div id="topic-feed"><div itemprop="publisher" itemscope itemtype="https://schema.org/Organization"><div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject"><link itemprop="image" href="/static/images/favicons/apple-touch-icon-152x152.png"><link itemprop="url" href="/static/images/favicons/apple-touch-icon-152x152.png"><meta itemprop="width" content="152"><meta itemprop="height" content="152"></div><meta itemprop="name" content="EVILEG"><meta itemprop="address" content="EVILEG"><meta itemprop="telephone" content="-"><link itemprop="url" href="https://evileg.com"></div><link itemprop="mainEntityOfPage" itemscope href="/en/forum/topic/218/" /><meta itemprop="commentCount" content="9"><div itemscope itemprop="author" itemtype="https://schema.org/Person"><meta itemprop="name" content="Arrow"><link itemprop="url" content="/en/users/248/"></div><meta itemprop="url" content="/en/forum/topic/218/"><meta itemprop="accessMode" content="textual"><meta itemprop="dateCreated" content="May 5, 2017, 8:04 p.m."><meta itemprop="dateModified" content="Feb. 15, 2025, 1:46 p.m."><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><meta itemprop="keywords" content="QGraphicsScene"><div class="card mb-3"><div class="card-header d-flex py-2"><a href=/en/users/248/><img loading="lazy" alt="Arrow" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/1c/28/1c28fd7eebc2cab904aa7c535f8169f6.webp"></a><div class="ms-3"><div><a href="/en/users/248/" class="text-decoration-none">Arrow</a></div><small class="text-secondary">May 5, 2017, 8:04 p.m.</small></div></div><div class="card-body"><h1 itemprop="name" >Рисование на QGraphicsScene при зажатой кнопке мыши</h1><p><a href="/en/search/?search=%23QGraphicsScene">QGraphicsScene</a></p><div itemprop="text"><p>Есть QGraphicsScene в которой происходит рисование на загруженной в нее картинке. Нужно дать пользователю возможность рисовать линию из точки А в точку В только при зажатой левой кнопке мыши. Рисование линии должно быть похоже на рисование линии в Paint. Как можно это организовать в Qt.</p></div><div class="mt-3"><a href="https://timeweb.com/ru/?i=27415&utm_source=evileg&utm_medium=after_article&utm_campaign=base" rel="nofollow" target="_blank"><div class="d-flex"><div class="me-3"><img src="/media/technical_storage/timeweb-120-90.jpg" alt="We recommend hosting TIMEWEB"></div><div><h5 class="mt-0">We recommend hosting TIMEWEB</h5> Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting. </div></div></a></div></div><div class="card-body border-top"><div class="form-check form-switch d-flex justify-content-between align-items-center"><input class="form-check-input me-3" type="checkbox" role="switch" disabled><label class="form-check-label mt-1">Subscribe to the discussion</label><span class="badge text-bg-primary ms-auto">3</span></div><div class="form-check form-switch d-flex justify-content-between align-items-center"><input class="form-check-input me-3" type="checkbox" role="switch" disabled><label class="form-check-label mt-1"><a href="/en/forum/qt/">Section subscription</a></label><span class="badge text-bg-primary ms-auto">252</span></div> The question is asked by the article<a class="ml-2" href="/en/post/80/">Qt/C++ - Lesson 017. QGraphicsScene – How to work with graphics in Qt</a></div><div class="m-3 p-3 bg-light rounded text-center"><p>Do you like it? Share on social networks!</p><script async src="https://yastatic.net/share2/share.js"></script><div class="ya-share2" data-curtain data-size="l" data-shape="round" data-lang="en" data-services="telegram,vkontakte,twitter,linkedin,reddit,odnoklassniki,whatsapp,skype,tumblr,lj,pocket,surfingbird"></div></div><div class="card-footer"><div class="btn btn-sm" title="Views"><i class="bi bi-eye me-1"></i>1.3K</div><a class="btn btn-sm btn-light" title="Comments" href="/en/forum/topic/218/#comments"><i class="bi bi-chat-left me-1"></i>9</a><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><span class="d-none" itemprop="answerCount">9</span><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8160668332851230" crossorigin="anonymous"></script><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-8160668332851230" data-ad-slot="6813806462"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script></div><a class="anchor" id="comments"></a><div id="comments-feed"><div id="1424" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1424"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/2/><img loading="lazy" alt="Evgenii Legotckoi" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/7a/08/7a0837c6eb199ca9af1a03ea5ccbfcbf.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/2/"><span itemprop="name">Evgenii Legotckoi</span><link itemprop="url" href="/en/users/2/"></a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1424" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1424" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 5, 2017, 9:27 p.m.</small></li></ul></div></div><div id='post_content_1424' itemprop="text" class="card-body"><div class="mb-3"><p> У меня прямо урок есть по <a href="https://evileg.com/post/84/"> рисованию в Qt </a> . </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="1426" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1426"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/248/><img loading="lazy" alt="Arrow" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/1c/28/1c28fd7eebc2cab904aa7c535f8169f6.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/248/"><span itemprop="name">Arrow</span><link itemprop="url" href="/en/users/248/"></a> → <a class="text-muted" href="/en/forum/topic/218/#post-1424">Evgenii Legotckoi</a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1426" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1426" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 5, 2017, 11:43 p.m.</small></li></ul></div></div><div id='post_content_1426' itemprop="text" class="card-body"><div class="mb-3"><p> Урок хороший, читал. </p><p> Вопрос в том что при ЛКМ запомнить начальную точку, при перемещении мыши отрисовать прямую линию из начальной точки в текущую позицию курсора, при отпускании ЛК мыши закончить рисование. </p><p> Но при зажатой ЛК мыши не должна рисоваться ломаная (сплошное рисование), а должна рисоваться прямая из нач. точки в новую точку, где теперь находится курсор. Старая же линия должна исчезнуть. </p><p> Вопрос: Как реализовать такое? Основное это как избавиться от старой линии. Просто зарисовать цветом фона не выйдет т. к. фон это изображение загруженное в QGraphicsScene (выбрано пользователем). </p><p> Это, что-то аналогичное функции MS Paint (Gimp, Pinta) - линия (прямая). </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="1427" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1427"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/2/><img loading="lazy" alt="Evgenii Legotckoi" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/7a/08/7a0837c6eb199ca9af1a03ea5ccbfcbf.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/2/"><span itemprop="name">Evgenii Legotckoi</span><link itemprop="url" href="/en/users/2/"></a> → <a class="text-muted" href="/en/forum/topic/218/#post-1426">Arrow</a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1427" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1427" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 5, 2017, 11:47 p.m.</small></li></ul></div></div><div id='post_content_1427' itemprop="text" class="card-body"><div class="mb-3"><p> То есть суть в том, что мы нажимаем ЛКМ, на qgraphicsscene появляется линия, один конец которой находится в точке клика, а второй следует за курсором. Как отпускаем ЛКМ, тогда линия и фиксируется как нарисованная? Я правильно понял? </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="1428" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1428"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/248/><img loading="lazy" alt="Arrow" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/1c/28/1c28fd7eebc2cab904aa7c535f8169f6.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/248/"><span itemprop="name">Arrow</span><link itemprop="url" href="/en/users/248/"></a> → <a class="text-muted" href="/en/forum/topic/218/#post-1427">Evgenii Legotckoi</a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1428" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1428" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 6, 2017, 12:13 a.m.</small></li></ul></div></div><div id='post_content_1428' itemprop="text" class="card-body"><div class="mb-3"><p> Да </p><p> Извините, случайно выбрал пост как решение. </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="1429" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1429"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/2/><img loading="lazy" alt="Evgenii Legotckoi" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/7a/08/7a0837c6eb199ca9af1a03ea5ccbfcbf.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/2/"><span itemprop="name">Evgenii Legotckoi</span><link itemprop="url" href="/en/users/2/"></a> → <a class="text-muted" href="/en/forum/topic/218/#post-1428">Arrow</a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1429" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1429" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 6, 2017, 12:56 a.m.</small></li></ul></div></div><div id='post_content_1429' itemprop="text" class="card-body"><div class="mb-3"><p> Есть у меня кое-какой код, но его нужно ещё найти и выдернуть из проекта. Завтра накидаю пример. </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="1430" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1430"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/248/><img loading="lazy" alt="Arrow" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/1c/28/1c28fd7eebc2cab904aa7c535f8169f6.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/248/"><span itemprop="name">Arrow</span><link itemprop="url" href="/en/users/248/"></a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1430" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1430" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 6, 2017, 1:14 a.m.</small></li></ul></div></div><div id='post_content_1430' itemprop="text" class="card-body"><div class="mb-3"><p> Я подумываю о записи линии с начальной точки в текущую в GroupItem, а затем при перемещении мыши удалении ее оттуда и рисовании новой с начальной точки в новую. </p><p> Только вопрос в том правильно ли это? Возможно есть вариант по лучше. </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="1432" class="card mb-3" itemprop="suggestedAnswer acceptedAnswer" itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1432"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/2/><img loading="lazy" alt="Evgenii Legotckoi" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/7a/08/7a0837c6eb199ca9af1a03ea5ccbfcbf.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/2/"><span itemprop="name">Evgenii Legotckoi</span><link itemprop="url" href="/en/users/2/"></a> → <a class="text-muted" href="/en/forum/topic/218/#post-1430">Arrow</a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1432" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1432" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 6, 2017, 4:48 p.m.</small></li><li class="list-inline-item me-2"><small class="text-success">The answer was marked as a solution.</small></li></ul></div></div><div id='post_content_1432' itemprop="text" class="card-body"><div class="mb-3"><p> То есть получается, что объект линии будет постоянно пересоздаваться, так? Лучше будет не пересоздавать объект линии, а устанавливать его форму. При этом алгоритм такой: </p><ol><li> При нажатии ЛКМ запоминаем позицию в качестве начальной точки </li><li> Поднимаем флаг, что была зажата ЛКМ </li><li> Создаём объект линии, и сохраняем указатель на него </li><li> При перемещении переустанавливаем форму линии с помощью запомненной первой позиции и текущей позиции курсора. </li><li> При отпускании кнопки мыши сбрасываем флаг зажатия ЛКМ. </li></ol><p> В самом простом варианте это реализуется с помощью графической сцены. В более сложном варианте имеет смысл логику по формированию формы выносить в класс линии. Это если типов графических объектов будет достаточно много. Тогда им можно сделать один общий базовый класс с виртуальными методами, которые будут единым интерфейсом взаимодействия с графической сценой. А иначе сама графическая сцена по коду может сильно распухнуть. Но пока приведу пример с графической сценой. </p><b> workplace.h </b><pre class="prettyprint lang-cpp">#ifndef WORKPLACE_H #define WORKPLACE_H #include <QGraphicsScene> class QGraphicsSceneMouseEvent; class QKeyEvent; class WorkPlace : public QGraphicsScene { Q_OBJECT Q_PROPERTY(QPointF previousPosition READ previousPosition WRITE setPreviousPosition NOTIFY previousPositionChanged) public: explicit WorkPlace(QObject *parent = 0); ~WorkPlace(); QPointF previousPosition() const; void setPreviousPosition(const QPointF previousPosition); signals: void previousPositionChanged(); protected: void mousePressEvent(QGraphicsSceneMouseEvent *event) override; void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override; void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override; private: QGraphicsItem *currentItem; QPointF m_previousPosition; bool m_leftMouseButtonPressed; }; #endif // WORKPLACE_H</pre><b> workplace.cpp </b><pre class="prettyprint lang-cpp">#include "workplace.h" #include <QGraphicsSceneMouseEvent> #include <QGraphicsLineItem> WorkPlace::WorkPlace(QObject *parent) : QGraphicsScene(parent), currentItem(nullptr), m_leftMouseButtonPressed(false) { setSceneRect(0, 0, 500, 500); } WorkPlace::~WorkPlace() { delete currentItem; } QPointF WorkPlace::previousPosition() const { return m_previousPosition; } void WorkPlace::setPreviousPosition(const QPointF previousPosition) { if (m_previousPosition == previousPosition) return; m_previousPosition = previousPosition; emit previousPositionChanged(); } void WorkPlace::mousePressEvent(QGraphicsSceneMouseEvent *event) { if (event->button() & Qt::LeftButton) { m_leftMouseButtonPressed = true; setPreviousPosition(event->scenePos()); QGraphicsLineItem *line = new QGraphicsLineItem(); currentItem = line; addItem(currentItem); line->setLine(QLineF(m_previousPosition, m_previousPosition)); } } void WorkPlace::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { if (m_leftMouseButtonPressed) { QGraphicsLineItem *line = qgraphicsitem_cast<QGraphicsLineItem *>(currentItem); line->setLine(QLineF(m_previousPosition, event->scenePos())); } } void WorkPlace::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) { if (event->button() & Qt::LeftButton) { m_leftMouseButtonPressed = false; } }</pre></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="1465" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-1465"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a href=/en/users/248/><img loading="lazy" alt="Arrow" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/1c/28/1c28fd7eebc2cab904aa7c535f8169f6.webp"></a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/248/"><span itemprop="name">Arrow</span><link itemprop="url" href="/en/users/248/"></a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-1465" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="1465" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">May 10, 2017, 3:47 p.m.</small></li></ul></div></div><div id='post_content_1465' itemprop="text" class="card-body"><div class="mb-3"><p> Спасибо! </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div><div id="9885" class="card mb-3" itemprop="suggestedAnswer " itemscope itemtype="http://schema.org/Answer"><a class="anchor" name="post-9885"></a><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/BookmarkAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/LikeAction"><meta itemprop="userInteractionCount" content="0"></div><div itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter"><meta itemprop="interactionType" content="https://schema.org/DislikeAction"><meta itemprop="userInteractionCount" content="0"></div><div class="card-header d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/18263/>f</a><div class="ms-3"><ul class="list-inline mb-0"><li class="list-inline-item"><a rel="author" itemprop="author" itemscope itemtype="http://schema.org/Person" href="/en/users/18263/"><span itemprop="name">firstlunoxod</span><link itemprop="url" href="/en/users/18263/"></a> → <a class="text-muted" href="/en/forum/topic/218/#post-1432">Evgenii Legotckoi</a></li><li class="list-inline-item mx-2"><a href="/en/forum/topic/218/#post-9885" title="Link to answer" itemprop="url">#</a></li></ul><ul data-post-header="9885" class="list-inline mb-0"><li class="list-inline-item me-2" itemprop="dateCreated"><small class="text-secondary">Feb. 15, 2025, 1:46 p.m.</small></li><li id='post_lastmod_9885' class="list-inline-item me-2" title="Feb. 15, 2025, 5:59 p.m."><small class="text-secondary">(edited)</small></li></ul></div></div><div id='post_content_9885' itemprop="text" class="card-body"><div class="mb-3"><p> Подскажите, пожалуйста! <br/> Как данный класс можно дополнить, чтобы созданные объекты можно было перемещать мышкой по сцене? </p></div><ul class="list-inline mb-0"></ul></div><div class="card-footer"><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can add to favorites"><i class="bi bi-bookmark me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-up-fill me-1"></i>0</div><div class="btn btn-sm btn-light" onclick="Global.nonlogin()" title="Only registered users can rate"><i class="bi bi-hand-thumbs-down-fill me-1"></i>0</div></div></div></div><div class="card card-warning m-3 "><div class="card-header bg-warning"><h3 class="card-title mb-0">Comments</h3></div><div class="card-body"> Only authorized users can post comments.<br/>Please, <a href="/en/accounts/login/">Log in</a> or <a href="/en/accounts/register/">Sign up</a></div></div></div></div><div class="col-12 col-lg-auto"><div class="sidebar sidebar-lg sticky-lg-top mb-3"><div class="list-group mb-3"><div class="list-group-item list-group-item-primary"><strong>Actions</strong></div><a None href="/en/knowledge/article/add/" class="list-group-item list-group-item-action"><span>Write article</span></a><a None href="/en/forum/create_topic/" class="list-group-item list-group-item-action"><span>Ask a question</span></a><a None href="/en/forum/create_topic/" class="list-group-item list-group-item-action"><span>Take the test</span></a><a None href="/en/sharecode/create/" class="list-group-item list-group-item-action"><span>Share code</span></a></div><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8160668332851230" crossorigin="anonymous"></script><!-- EVILEG SIDEBAR TOP --><ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-8160668332851230" data-ad-slot="8743063287" data-ad-format="auto" data-full-width-responsive="true"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script></div></div></div><div class="row"><div class="col-12 col-lg overflow-hidden"><ul class="list-group mb-3"><li class="list-group-item list-group-item-primary"><strong>Last passed tests</strong></li><li class="list-group-item"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/18277/>IS</a><div class="ms-3"><div><a href="/en/users/18277/" class="text-decoration-none">Ivan Simonenko</a></div><small class="text-secondary">March 31, 2025, 2:03 a.m.</small></div></div><div class="mb-3"><div><a href="/en/tests/t/9/">Qt - Test 001. Signals and slots</a></div><div><strong>Result:</strong> 0 points</div><div><span class="text-danger">Test is not passed</span></div></div></li><li class="list-group-item"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/18456/>АА</a><div class="ms-3"><div><a href="/en/users/18456/" class="text-decoration-none">Антон Арнст</a></div><small class="text-secondary">March 14, 2025, 1:48 p.m.</small></div></div><div class="mb-3"><div><a href="/en/tests/t/9/">Qt - Test 001. Signals and slots</a></div><div><strong>Result:</strong> 68 points</div><div><span class="text-danger">Test is not passed</span></div></div></li><li class="list-group-item"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/18456/>АА</a><div class="ms-3"><div><a href="/en/users/18456/" class="text-decoration-none">Антон Арнст</a></div><small class="text-secondary">March 14, 2025, 1:43 p.m.</small></div></div><div class="mb-3"><div><a href="/en/tests/t/1/">C++ - Test 001. The first program and data types</a></div><div><strong>Result:</strong> 60 points</div><div><span class="text-danger">Test is not passed</span></div></div></li></ul><ul class="list-group mb-3"><li class="list-group-item list-group-item-primary"><strong>Last comments</strong></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a href=/en/users/2/><img loading="lazy" alt="Evgenii Legotckoi" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/7a/08/7a0837c6eb199ca9af1a03ea5ccbfcbf.webp"></a><div class="ms-3"><div><a href="/en/users/2/" class="text-decoration-none">Evgenii Legotckoi</a></div><small class="text-secondary">March 9, 2025, 9:02 p.m.</small></div></div><div><a href="/en/post/193/#comment-2844">QML - Lesson 020. Introduction to Android Manifest in Qt Creator</a></div><div class="text-break"> К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…</div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/15549/>VP</a><div class="ms-3"><div><a href="/en/users/15549/" class="text-decoration-none">Viktor Pathfinder</a></div><small class="text-secondary">March 9, 2025, 4:14 p.m.</small></div></div><div><a href="/en/post/193/#comment-2843">QML - Lesson 020. Introduction to Android Manifest in Qt Creator</a></div><div class="text-break"> Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…</div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/1217/>ИМ</a><div class="ms-3"><div><a href="/en/users/1217/" class="text-decoration-none">Игорь Максимов</a></div><small class="text-secondary">Nov. 22, 2024, 9:51 p.m.</small></div></div><div><a href="/en/post/203/#comment-2842">Django - Tutorial 017. Customize the login page to Django</a></div><div class="text-break"> Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…</div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a href=/en/users/2/><img loading="lazy" alt="Evgenii Legotckoi" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/7a/08/7a0837c6eb199ca9af1a03ea5ccbfcbf.webp"></a><div class="ms-3"><div><a href="/en/users/2/" class="text-decoration-none">Evgenii Legotckoi</a></div><small class="text-secondary">Oct. 31, 2024, 11:37 p.m.</small></div></div><div><a href="/en/post/729/#comment-2751">Django - Lesson 064. How to write a Python Markdown extension</a></div><div class="text-break"> Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup </div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/17869/>A</a><div class="ms-3"><div><a href="/en/users/17869/" class="text-decoration-none">ALO1ZE</a></div><small class="text-secondary">Oct. 19, 2024, 5:19 p.m.</small></div></div><div><a href="/en/post/485/#comment-2750">Fb3 file reader on Qt Creator</a></div><div class="text-break"> Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html </div></div></li></ul><ul class="list-group mb-3"><li class="list-group-item list-group-item-primary"><strong>Now discuss on the forum</strong></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/18263/>f</a><div class="ms-3"><div><a href="/en/users/18263/" class="text-decoration-none">firstlunoxod</a></div><small class="text-secondary">Feb. 15, 2025, 1:46 p.m.</small></div></div><div><a href="/en/forum/topic/218/#post-9885">Рисование на QGraphicsScene при зажатой кнопке мыши</a></div><div class="text-break"> Подскажите, пожалуйста! Как данный класс можно дополнить, чтобы созданные объекты можно было перемещать мышкой по сцене? </div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a href=/en/users/2417/><img loading="lazy" alt="Дмитрий" class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" src="/media/cache/7f/2a/7f2a7c6416eb74fb21e8506c0ed78532.webp"></a><div class="ms-3"><div><a href="/en/users/2417/" class="text-decoration-none">Дмитрий</a></div><small class="text-secondary">Feb. 3, 2025, 4:24 p.m.</small></div></div><div><a href="/en/forum/topic/1920/">Создание deb-пакета. Как создать ярлык на рабочем столе после установки собственного deb-пакета?</a></div><div class="text-break"> Всем привет. Сделал свой deb-пакет с программой. Всё устанавливается и работает. Ставлю по пути /usr/bin/my_application. Как для пользователя при установке пакета сразу создать ярлык на раб…</div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/18202/>NW</a><div class="ms-3"><div><a href="/en/users/18202/" class="text-decoration-none">Nayo Wai</a></div><small class="text-secondary">Jan. 30, 2025, 7:22 p.m.</small></div></div><div><a href="/en/forum/topic/1919/">не запускается компьютер!!!</a></div><div class="text-break"> Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…</div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/12748/>n</a><div class="ms-3"><div><a href="/en/users/12748/" class="text-decoration-none">nkly</a></div><small class="text-secondary">Jan. 3, 2025, 12:52 p.m.</small></div></div><div><a href="/en/forum/topic/1909/#post-9884">Нужно запретить перемещение только некоторых итемов, остальные перемещать можно.</a></div><div class="text-break"> Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…</div></div></li><li class="list-group-item"><div class="py-2"><div class="d-flex py-2"><a class="bg-secondary bg-opacity-10 rounded avatar-initials avatar-48" href=/en/users/15590/>M</a><div class="ms-3"><div><a href="/en/users/15590/" class="text-decoration-none">Marsel</a></div><small class="text-secondary">Aug. 17, 2023, 12:26 a.m.</small></div></div><div><a href="/en/forum/topic/1850/#post-9711">OAuth2.0 через VK, получение email</a></div><div class="text-break"> Спасибо большое за помощь и простите за то что отнял время своей невнимательностью. </div></div></li></ul></div><div class="col-12 col-lg-auto"><div class="sidebar sidebar-lg sticky-lg-top mb-3"><div class="sidebar sidebar-lg sticky-top"><script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8160668332851230" crossorigin="anonymous"></script><!-- EVILEG SIDEBAR BOTTOM --><ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-8160668332851230" data-ad-slot="3079673067" data-ad-format="auto" data-full-width-responsive="true"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script></div></div></div></div></main><div class="container-xxl"><footer class="py-5"><div class="row"><div class="col-6 col-md-3 mb-3"><h5>About us</h5><ul class="nav flex-column"><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="/en/pages/">About us</a></li><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="/en/pages/rules/privacy-policy/">Privacy Policy</a></li><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="/en/pages/contacts/">Contacts</a></li><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="/en/pages/donate/">Donate</a></li><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="/en/pages/for-advertisers/">For advertisers</a></li></ul></div><div class="col-6 col-md-3 mb-3"><h5>Follow us in social networks</h5><ul class="nav flex-column"><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="https://vk.com/evileg" target="_blank" rel="noindex nofollow">VKontakte</a></li><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="https://t.me/evileg_ru" target="_blank" rel="noindex nofollow">Telegram</a></li><li class="nav-item mb-2"><a class="nav-link p-0 text-body-secondary" href="https://www.reddit.com/r/Evileg/" target="_blank" rel="noindex nofollow">Reddit</a></li></ul></div><div class="col-6 mb-3"><ul class="nav flex-column"><li class="nav-item mb-2">We recommend VSD hosting <a class="nav-link p-0" href="http://timeweb.com/ru/?i=27415&utm_source=evileg&utm_medium=footer&utm_campaign=timeweb" target="_blank" rel="noindex nofollow">Timeweb</a></li></ul></div></div><div class="d-flex flex-column flex-sm-row justify-content-between py-4 my-4 border-top"><p>© 2015-2025, Evgenii Legotckoi</p><ul class="list-unstyled d-flex"><li class="ms-3"><a class="link-body-emphasis" href="https://t.me/evileg_ru" target="_blank" rel="noindex nofollow"><i class="bi bi-telegram" style="font-size: 2rem;"></i></a></li><li class="ms-3"><a class="link-body-emphasis" href="https://www.reddit.com/r/Evileg/" target="_blank" rel="noindex nofollow"><i class="bi bi-reddit" style="font-size: 2rem;"></i></a></li></ul></div></footer></div><div id="menuModal" class="modal" tabindex="-1"><div class="modal-dialog modal-dialog-scrollable"><div class="modal-content"><div class="modal-header"><h5 class="modal-title">Actions</h5><button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button></div><div class="modal-body m-0 p-0"><div class="list-group list-group-flush"><a None href="/en/knowledge/article/add/" class="list-group-item list-group-item-action"><span>Write article</span></a><a None href="/en/forum/create_topic/" class="list-group-item list-group-item-action"><span>Ask a question</span></a><a None href="/en/forum/create_topic/" class="list-group-item list-group-item-action"><span>Take the test</span></a><a None href="/en/sharecode/create/" class="list-group-item list-group-item-action"><span>Share code</span></a></div></div></div></div></div><script async src="/static/js/run_prettify.js"></script><!-- Yandex.Metrika counter --><script type="text/javascript" > (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date(); for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(39565770, "init", { clickmap:true, trackLinks:true, accurateTrackBounce:true }); </script><noscript><div><img src="https://mc.yandex.ru/watch/39565770" style="position:absolute; left:-9999px;" alt="" /></div></noscript><!-- /Yandex.Metrika counter --><script defer src="/static/js/forum.min.js?16"></script><!-- Yandex.RTB R-A-218837-50 --><script> window.addEventListener("load", () => { const render = (imageId) => { window.yaContextCb.push(() => { Ya.Context.AdvManager.render({ "renderTo": imageId, "blockId": "R-A-218837-50", "type": "inImage" }) }) } const renderInImage = (images) => { if (!images.length) { return } const image = images.shift() image.id = `yandex_rtb_R-A-218837-50-${Math.random().toString(16).slice(2)}` if (image.tagName === "IMG" && !image.complete) { image.addEventListener("load", () => { render(image.id) }, { once: true }) } else { render(image.id) } renderInImage(images) } renderInImage(Array.from(document.querySelectorAll("img"))) }, { once: true }) </script></body></html>