前几天课设做个聊天系统,顺便实现了这个在程序外显示弹幕作为消息提示的功能,这里记录一下怎么搞。
目录
效果
思路
- 创建一个子窗口
- 将子窗口去掉窗口标题栏,设置背景透明
- 在里面放文本Text
- 设置定时器控制子窗口从左到右移动,移动到右边缘时销毁子窗口
实操
- 新建qml文件,这里示例 Barrage.qml
- 里面写入:
import QtQuick 2.3
import QtQuick.Controls 2.5
//窗口
ApplicationWindow {
id:root
property string str: "我的洛天依" //弹幕文本内容
width: 300
height: 40
flags: Qt.FramelessWindowHint //去掉窗口标题栏
color:"#00000000" //设置背景透明
Rectangle { //使用矩形包裹Text是为了在Text外面可以增加圆角矩形边框效果
anchors.fill: parent
border.width: 1 //设置边框
border.color: "#66ccff"
color:"#00000000"
radius: 20 //边框圆角
clip: true //超出矩形范围的内容隐藏
Text { //弹幕文本
anchors.fill: parent
text: str
font.bold: true
font.pointSize: 15
color: "#66ccff"
style: Text.Outline //设置文本样式,在字体轮廓加一层styleColor指定的颜色边缘,防止背景导致文本不明显
styleColor: "#fff"
horizontalAlignment: Text.AlignHCenter //居中
verticalAlignment: Text.AlignVCenter
clip: true
}
}
}
- 在需要调用的qml文件中,导入并按如下操作使用:
- 由于Barrage.qml和main.qml在同一目录下:
- 因此在main.qml中可以直接使用Barrage.qml
- 以下是 main.qml 的内容
import QtQuick
import QtQuick.Window 2.3
import QtQuick.Controls 2.5
Window {
id:mainWin
width: 700
height: 500
visible: true
title: qsTr("MimicryChat")
//添加弹幕
function addBarrage(in_str) {
var newCom = Qt.createComponent("Barrage.qml"); //创建弹幕窗口
var newWin = newCom.createObject();
newWin.x = 200;
newWin.y = Math.random() * 900; //随机竖直位置
newWin.str = in_str; //设置弹幕文本
newWin.show(); //显示弹幕窗口
//设置定时控制器
let timer = Qt.createQmlObject("import QtQuick 2.14; Timer {}", mainWin);
timer.interval = 20; //执行间隔时间(单位ms)
timer.repeat = true; //重复执行
timer.triggered.connect(function() { //执行内容
if(newWin.x < 1700) { //如果没到右边缘就移动2个像素点
newWin.x += 2;
} else {
timer.stop(); //到达右边缘,则停止定时控制器,并销毁弹幕
newWin.close();
}
});
timer.start(); //启动定时器
}
Rectangle { //主窗口背景颜色
anchors.fill: parent
color: "#dde8fc"
radius: 20
}
Button {
width:100
height: 40
text:"发送弹幕"
anchors.bottom: parent.bottom
anchors.bottomMargin: 10
//水平居中
anchors.horizontalCenter: parent.horizontalCenter
onClicked: {
addBarrage("嘿嘿,我的洛天依");
}
}
}
问题
- 这个弹幕会被其他高层次的窗口遮挡,显然问题在于我们创建的窗口不是顶层窗口,这个后面再看看咋整。
Добрый день!
Мы изготавливаем дипломы любой профессии по выгодным тарифам. Стоимость зависит от выбранной специальности, года получения и ВУЗа. Всегда стараемся поддерживать для клиентов адекватную политику цен. Важно, чтобы документы были доступны для большинства наших граждан.
bookmarkprobe.com/story17268629/купить-диплом-в-Самаре
Lorem Ipsum has been the industry’s standard dummy text https://webclinic.es/afyce of type and scrambled it to make a type specimen book.
Эксклюзивные промокоды для Вас! Эксклюзивные промокоды для Вас! .
Как использовать промокоды и получать скидки. Как использовать промокоды и получать скидки. .
Добрый день!
Заказать диплом о высшем образовании.
biomedia.pro/club/user/112304/forum/message/3755/13237/
Привет!
Узнайте стоимость диплома высшего и среднего образования и процесс получения
gaigoimoinhat.xyz/купить-диплом-о-высшем-образовании-со/
Всегда вам поможем!.
Undress AI & Bulk Nude AI Generator nudify online. Make AI nudes and bulk generate undress AI photos of any girl for almost free!
Привет, друзья!
Парадокс, но купить диплом кандидата наук оказалось не так и сложно
mans-diplomxx.ru
Lorem Ipsum has been the industry’s standard dummy text https://ilclubdigitale.it/uhden of type and scrambled it to make a type specimen book.
Привет, друзья!
Мы изготавливаем дипломы любых профессий по приятным ценам. Стоимость будет зависеть от выбранной специальности, года выпуска и ВУЗа. Всегда стараемся поддерживать для заказчиков адекватную политику тарифов. Важно, чтобы документы были доступны для большинства наших граждан.
irc71.ru/index.php/jomsocial/groups/viewbulletin/191-kak-podyskat-khoroshij-internet-magazin-gde-mozhno-zakazat-diplom?groupid=47
Здравствуйте!
Мы готовы предложить дипломы любой профессии по приятным тарифам. Цена будет зависеть от определенной специальности, года получения и образовательного учреждения. Стараемся поддерживать для заказчиков адекватную ценовую политику. Для нас важно, чтобы дипломы были доступными для большого количества наших граждан.
dailybookmarkhit.com/story17239330/можно-ли-купить-диплом-вуза
Авто статті https://black-star.com.ua з порадами з ремонту та обслуговування
DMV Test на русском языке https://papadmv.com тесты с ответами ПДД США 2024. Тренировочные dmv test на русском для сдачи на права, изучите правила дорожного движения США для разных штатов.
Добрый день!
Заказать документ о получении высшего образования вы можете у нас.
asxdiplomik.com/kupit-diplom-krasnodar
Здравствуйте!
Мы предлагаем дипломы любой профессии по приятным ценам.
diploms-man.ru
Привет!
Как избежать рисков при покупке диплома колледжа или ПТУ в России
arusak-diploms-srednee.ru/kupit-diplom-v-krasnoiarske
Привет, друзья!
Заказать документ университета
ast-diplom.com/kupit-diplom-rostov-na-donu
Lorem Ipsum has been the industry’s standard dummy text https://cosavedereinungiorno.it/jbnnjj of type and scrambled it to make a type specimen book.
Привет!
Как официально приобрести аттестат 11 класса с минимальными затратами времени
mycryptonewzhub.com/диплом-купить-где-и-как/
Окажем помощь!.
Добрый день!
Реально ли приобрести диплом стоматолога? Основные этапы
landik-diploms-srednee.ru/kupit-diplom-v-voronezhe В
This is a great tip especially to those new to the blogosphere. Short but very precise info… Thank you for sharing this one. A must read article!
Привет!
Заказать диплом университета.
saluttunisia.com/jomsocial/groups/viewbulletin/267-shirokij-assortiment-dokumentov-v-izvestnom-magazine.html?groupid=101
Здравствуйте!
Заказать документ ВУЗа
asxdiplomik.com/kupit-diplom-rostov-na-donu
Привет!
Заказать документ о получении высшего образования вы сможете у нас в Москве.
diplomasx24.ru/kupit-diplom-voronezh
Успешной учебы!
Добрый день!
Заказать документ о получении высшего образования вы сможете у нас в столице.
ast-diplomas24.ru/kupit-diplom-vracha
Удачи!
Привет, друзья!
Заказать документ о получении высшего образования можно в нашей компании в Москве.
ast-diploms24.ru/kupit-diplom-magistra
Хорошей учебы!
Здравствуйте!
Быстрая схема покупки диплома старого образца: что важно знать?
mipropuestadenegocio.com/category/uncategorized/page/3/
Поможем вам всегда!.
Добрый день!
Заказать документ о получении высшего образования можно у нас в столице. Мы оказываем услуги по продаже документов об окончании любых ВУЗов Российской Федерации. Вы получите необходимый диплом по любой специальности, любого года выпуска, включая документы старого образца. Гарантируем, что в случае проверки документа работодателями, никаких подозрений не появится.
Мы предлагаем дипломы любой профессии по выгодным тарифам. Цена зависит от выбранной специальности, года получения и образовательного учреждения. Стараемся поддерживать для заказчиков адекватную политику цен. Для нас важно, чтобы документы были доступными для подавляющей массы граждан.
propedagog.ru/roditelyam/vospitanie/fiziko-pedagogicheskie-aspekty-polovogo-sozrevaniya/polovoe-sozrevanie-i-problemy-vospitaniya/1167-polovoe-sozrevanie-i-razvitie-lichnosti
Всегда вам поможем!
Добрый день!
Приобрести диплом университета.
p99946c6.beget.tech/2024/07/04/kak-nayti-nadezhnyy-internet-magazin-s-shirokim-katalogom-diplomov.html
dexamethasone 2.5 mg
retin a prices
Топовые промокоды для экономных покупателей Топовые промокоды для экономных покупателей .
Lorem Ipsum has been the industry’s standard dummy text https://investeringsgronden.nl/aolpvjp of type and scrambled it to make a type specimen book.
Секретные промокоды – успейте использовать! Секретные промокоды – успейте использовать! .
Все актуальные промокоды в одном месте http://www.promokodbar.ru .
Лучшие промокоды для выгодных покупок. http://free-promocode.ru .
Здравствуйте!
Заказать документ о получении высшего образования вы можете в нашей компании в Москве.
ast-diplomy.com/kupit-diplom-bakalavra-ili-specialistaВ
Здравствуйте!
Мы изготавливаем дипломы психологов, юристов, экономистов и прочих профессий по приятным тарифам.
mandiplomik.ru
Привет, друзья!
Мы изготавливаем дипломы любых профессий по невысоким тарифам.
diplomman.ru
Здравствуйте!
Приобрести документ о получении высшего образования можно у нас.
asxdiplomik24.ru/kupit-diplom-bakalavra-ili-specialista
Привет, друзья!
Купить документ института можно у нас в Москве.
ast-diplom.com/kupit-diplom-bakalavra-ili-specialista
Добрый день!
Заказать документ о получении высшего образования можно в нашей компании.
ast-diplomas.com/kupit-diplom-s-registraciej
Добрый день!
Как не попасть впросак при покупке диплома колледжа или ПТУ в России
mans-diplomas.ru
Lorem Ipsum has been the industry’s standard dummy text https://betway-casino-app.in/hwhvb of type and scrambled it to make a type specimen book.
Автомобільні новини https://avtonews.kyiv.ua України. Все для автовласника.
Привет, друзья!
Мы можем предложить дипломы любых профессий.
picbok.org/read-blog/4658_nadezhnyj-internet-magazin-s-obshirnym-vyborom-dokumentov.html
Поможем вам всегда!.
Авто статті https://bestauto.kyiv.ua з порадами з ремонту та обслуговування, авто блог з професійними порадами, огляди новинок
Автомобільні новини https://autonovosti.kyiv.ua України та світу, тест-драйви нових авто, поради експертів
Автоновини України https://avtomobilist.kyiv.ua огляди машин та новини для автомобілістів
Thank you for great article. Hello Administ .Seo Paketi Skype: By_uMuT@KRaLBenim.Com -_- live:by_umut