前几天课设做个聊天系统,顺便实现了这个在程序外显示弹幕作为消息提示的功能,这里记录一下怎么搞。
目录
效果
思路
- 创建一个子窗口
- 将子窗口去掉窗口标题栏,设置背景透明
- 在里面放文本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("嘿嘿,我的洛天依");
}
}
}
问题
- 这个弹幕会被其他高层次的窗口遮挡,显然问题在于我们创建的窗口不是顶层窗口,这个后面再看看咋整。
Привет!
Мы изготавливаем дипломы любой профессии по выгодным ценам.
lgzprojects.co.za/2024/06/30/куплю-диплом-рф/
Привет!
Мы предлагаем дипломы любых профессий по приятным ценам.
kimhungimex.com/en/диплом-пустой-купить-2/
Привет!
Приобрести документ института можно у нас.
ast-diploms.com/kupit-diplom-magistra
Хорошей учебы!
Lorem Ipsum has been the industry’s standard dummy text https://pedrocollar.es/rzflrvy of type and scrambled it to make a type specimen book.
Привет, друзья!
Купить диплом о высшем образовании.
saluttunisia.com/jomsocial/groups/viewbulletin/267-shirokij-assortiment-dokumentov-v-izvestnom-magazine.html?groupid=101
Здравствуйте!
Где заказать диплом по нужной специальности?
camp-fire.jp/profile/BernardCruz
Добрый день!
Приобрести диплом любого университета.
wiki.3cdr.ru/wiki/index.php/%D0%9A%D0%B0%D1%82%D0%B0%D0%BB%D0%BE%D0%B3_%D0%B8_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%BA%D0%B8_%D0%B2_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82_%D0%BC%D0%B0%D0%B3%D0%B0%D0%B7%D0%B8%D0%BD%D0%B5._%D0%9F%D1%80%D0%B8%D0%BE%D0%B1%D1%80%D0%B5%D1%82%D0%B0%D0%B5%D0%BC_%D0%B4%D0%B8%D0%BF%D0%BB%D0%BE%D0%BC
Привет, друзья!
Приобрести документ ВУЗа
ast-diplom24.ru/kupit-diplom-magistra
Lorem Ipsum has been the industry’s standard dummy text https://dpostigo.es/sucyv of type and scrambled it to make a type specimen book.
Добрый день!
Заказать документ института вы имеете возможность у нас в столице.
ast-diplomas.com/kupit-diplom-bakalavra-ili-specialista
Добрый день!
Купить документ ВУЗа можно у нас в Москве.
asxdiplomik.com/kupit-diplom-o-srednem-obrazovanii
Успехов в учебе!
Добрый день!
Как получить диплом техникума с упрощенным обучением в Москве официально
6neosolution.fr/2024/06/30/куплю-диплом-велики/
очень классное порево http://www.klassny-sex.ru/ .
Привет, друзья!
Приобрести документ университета можно у нас.
ast-diplomas24.ru/otzyvy
Хорошей учебы!
Добрый день!
Купить документ о получении высшего образования вы имеете возможность у нас в столице.
ast-diplomy.com/kupit-diplom-krasnoyarsk
Хорошей учебы!
Добрый день!
Купить документ института вы можете в нашем сервисе.
ast-diplom.com/kupit-diplom-voronezh
Хорошей учебы!
Lorem Ipsum has been the industry’s standard dummy text https://poloneztur.pl/outqof of type and scrambled it to make a type specimen book.
Здравствуйте!
Мы предлагаем дипломы психологов, юристов, экономистов и других профессий по приятным тарифам.
datafornix.com/госзнак-диплом-купить/
Привет, друзья!
Как официально приобрести аттестат 11 класса с минимальными затратами времени
arusak-diploms-srednee.ru/diplom-sredne-spetcialnoe-obrazovanie В
Добрый день!
Приобрести диплом любого ВУЗа.
forum.rucarp.ru/album.php?albumid=128&attachmentid=35737&commentid=1961
Привет, друзья!
Можно ли купить аттестат о среднем образовании? Основные рекомендации
landik-diploms-srednee.ru/kupit-diplom-v-voronezhe В
Привет, друзья!
Заказать документ ВУЗа
ast-diplomy.com/kupit-diplom-ekaterinbur
Привет!
Полезные советы по безопасной покупке диплома о высшем образовании
landik-diploms-srednee.ru/kupit-diplom-saratov В
Привет, друзья!
Купить документ ВУЗа
diploms-x24.ru/kupit-diplom-voronezh
Lorem Ipsum has been the industry’s standard dummy text https://kellyandzenneth.co.za/arzde of type and scrambled it to make a type specimen book.
классное порево видео http://klassny-sex.ru/ .
cheapest car rental Montenegro https://www.montenegro-car-rental-hire.com
Привет!
Заказать документ о получении высшего образования вы имеете возможность в нашей компании в столице.
ast-diploms.com/kupit-diplom-o-vysshem-obrazovanii
самое лучшее бесплатное порно http://www.best-free-porno.ru .
классное порево видео klassny-sex.ru .
Lorem Ipsum has been the industry’s standard dummy text https://isolazerouno.it/lscmrp of type and scrambled it to make a type specimen book.
Привет, друзья!
Мы изготавливаем дипломы психологов, юристов, экономистов и прочих профессий.
roving.club/read-blog/720_kak-vybrat-nadezhnyj-i-proverennyj-magazin-chto-realizuet-diplomy.html?mode=night
Рады оказать помощь!.
Автомобільний портал https://allauto.kyiv.ua який захоплює своїми тест-драйвами та новими новинами автосвіту
Новини автомобільного ринку https://autoguide.kyiv.ua та автопромисловості
Автомобільний портал https://autodream.com.ua новини та огляди новинок авторинку.
Здравствуйте!
Заказать документ института можно в нашей компании в Москве.
diplomyx24.ru/kupit-diplom-sankt-peterburg
Удачи!
Привет!
Официальная покупка диплома вуза с сокращенной программой обучения в Москве
newmanstrength.com/диплом-проведенный-купить/
Привет!
Мы изготавливаем дипломы любой профессии по приятным ценам. Цена может зависеть от выбранной специальности, года получения и образовательного учреждения. Всегда стараемся поддерживать для заказчиков адекватную политику тарифов. Важно, чтобы документы были доступны для подавляющей массы наших граждан.
toplentanews.ru/eksklyuzivnoe-obrazovanie-gde-kupit-diplom-vyisokogo-kachestva
Lorem Ipsum has been the industry’s standard dummy text https://inak.es/rcefz of type and scrambled it to make a type specimen book.
Привет!
Заказать документ о получении высшего образования можно у нас в Москве.
ast-diplomy.com/kupit-diplom-kandidata-nauk
Привет!
Приобрести документ ВУЗа можно у нас в Москве.
diploms-x24.ru/kupit-diplom-voronezh
Успехов в учебе!
Здравствуйте!
Купить документ о получении высшего образования вы имеете возможность в нашей компании в столице.
asxdiplomik.com/kupit-diplom-specialista
Добрый день!
Мы изготавливаем дипломы любых профессий по разумным тарифам.
worldgonews.ru/diplomyi-ot-luchshih-vuzov
Привет, друзья!
Покупка диплома о среднем полном образовании: как избежать мошенничества?
paul-services.co.uk/купить-диплом-в-канске/
Привет!
Как купить диплом о высшем образовании с минимальными рисками
sajadusta.com/купить-диплом-омск/
Lorem Ipsum has been the industry’s standard dummy text https://spinaldecompression.co.za/hvtqqzr of type and scrambled it to make a type specimen book.
Здравствуйте!
Где купить диплом по нужной специальности?
http://www.jointcorners.com/read-blog/78325
I wanted to thank you for this good read!! I certainly enjoyed every bit of it. I’ve got you book-marked to check out new things you post…
Добрый день!
Покупка диплома о среднем полном образовании: как избежать мошенничества?
yacina.net/купить-диплом-о-высшем-образовании-ре/
Будем рады вам помочь!.
лучшее порно видео онлайн бесплатно лучшее порно видео онлайн бесплатно .