前几天课设做个聊天系统,顺便实现了这个在程序外显示弹幕作为消息提示的功能,这里记录一下怎么搞。
目录
效果
思路
- 创建一个子窗口
- 将子窗口去掉窗口标题栏,设置背景透明
- 在里面放文本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("嘿嘿,我的洛天依");
}
}
}
问题
- 这个弹幕会被其他高层次的窗口遮挡,显然问题在于我们创建的窗口不是顶层窗口,这个后面再看看咋整。
топ капперов топ капперов .
Everything is very open with a clear clarification of the issues. It was truly informative. Your website is useful. Many thanks for sharing!
Привет, друзья!
Где заказать диплом специалиста?
http://www.marqueze.net/miembros/billyoung/profile/classic/
Добрый день!
Где купить диплом специалиста?
usa.life/read-blog/62808
купить двухкомнатную в новостройке купить новостройку от застройщика
Привет, друзья!
Где приобрести диплом по необходимой специальности?
zomi.net/read-blog/28389
купить 2 комнатную квартиру в новостройке https://novye-kvartiry-spb.ru
купить двухкомнатную квартиру купить квартиру от застройщика
квартира в новостройке от застройщика https://novye-kvartiryspb.ru
купить квартиру в новостройке цены недвижимость купить квартиру
Здравствуйте!
Приобрести диплом любого ВУЗа.
sonnick84.blogrenanda.com/34141702/%D0%A7%D1%82%D0%BE-%D1%81%D0%BC%D0%BE%D0%B6%D0%B5%D1%82-%D0%B2-%D0%BD%D0%B0%D1%88%D0%B5-%D0%B2%D1%80%D0%B5%D0%BC%D1%8F-%D0%BF%D1%80%D0%B5%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-%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-%D1%81-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D0%BC%D0%B8
Привет!
Купить диплом любого ВУЗа.
cdposz.ru/club/user/802/forum/message/1485/1544/
конференц залы оснащение конференц залы оснащение .
Great delivery. Solid arguments. Keep up the great spirit.
звуковое оборудование для конференц зала http://www.oborudovanie-dlja-konferenc-zalov.ru .
paxlovid covid: paxlovid for sale – paxlovid buy
Добрый день!
Приобрести документ ВУЗа можно в нашей компании в Москве.
diplomyx.com/kupit-diplom-voronezh
Хорошей учебы!
Lorem Ipsum has been the industry’s standard dummy text https://cloudtechnical.in/ywygp of type and scrambled it to make a type specimen book.
데지 슬롯
“오.” Hongzhi 황제는 “읽고 들어라. “라고 고개를 끄덕였다.
amoxicillin 500 mg tablet price: amoxicillin 500mg for sale uk – amoxicillin pills 500 mg
Привет!
Приобрести документ о получении высшего образования вы сможете в нашей компании.
ast-diplomas24.ru/kupit-diplom-rostov-na-donu
Хорошей учебы!
Привет!
Приобрести документ университета вы сможете в нашей компании.
ast-diplomy.com/kupit-diplom-sankt-peterburg
Успехов в учебе!
Здравствуйте!
Приобрести документ о получении высшего образования вы можете в нашей компании.
diplomasx24.ru/kupit-diplom-rostov-na-donu
Удачи!
vermox uk
современное оборудование для конференц зала современное оборудование для конференц зала .
Привет, друзья!
Как быстро получить диплом магистра? Легальные способы
landik-diploms-srednee.ru/diplom-bakalavra В
Здравствуйте!
Заказать документ института
ast-diploms.com/kupit-diplom-krasnoyarsk
흑호 슬롯
Fang Xiaofan은 “하지만 옳은 일을하면 보상이 있습니까? “라고 말했습니다.
Добрый день!
Мы можем предложить дипломы любой профессии по выгодным тарифам.
http://www.rcmecano.fr/2024/06/30/купили-дипломы-университета/
Lorem Ipsum has been the industry’s standard dummy text https://zuzannaandrzejewska.pl/ikhjleu of type and scrambled it to make a type specimen book.
Привет, друзья!
Мы изготавливаем дипломы любой профессии по приятным тарифам.
rsn360.ru/blogs/427/¬аш-?иплом- ачество-и-ѕодлинность
Привет, друзья!
Приобрести диплом о высшем образовании.
w98804oc.beget.tech/2024/07/04/kak-nayti-proverennyy-internet-magazin-s-ogromnym-vyborom-diplomov.html
Oh my goodness! Amazing article dude! Thank you, However I am experiencing troubles with your RSS. I don’t know why I am unable to join it. Is there anybody else getting the same RSS issues? Anybody who knows the solution will you kindly respond? Thanks!
ラブドールの魅力は、オナドール本物の人間と同じ外見を持っていることです。普通の生活で、こんな完璧なガールフレンドはいないかもしれません。
Silicone sex dolls and those crafted from thermoplastic elastomers ドール オナニー(TPE) have emerged as pioneers, offering a touch and feel that rival authentic human experiences.
amoxicillin 50 mg tablets: amoxicillin cost australia – amoxicillin 250 mg capsule
albuterol purchase without prescription canada
смотреть порно видео гимнастками https://www.sexygimnastky.ru .
Добрый день!
Купить диплом ВУЗа.
bazhenova.greatforum.ru/viewtopic.php?f=17&t=4398
Хорошей учебы!
Добрый день!
Как не стать жертвой мошенников при покупке диплома о среднем полном образовании
wownsk-portal.ru/index.php?subaction=userinfo&user=uzowawony
Окажем помощь!.
In the world of sex dolls, ドール オナニーsize is a critical consideration. Buyers can opt for a full-sized doll,
Lorem Ipsum has been the industry’s standard dummy text https://lmnst.es/dijrhhh of type and scrambled it to make a type specimen book.
Добрый день!
Приобрести документ института можно в нашей компании.
diplomasx.com/kupit-diplom-o-srednem-obrazovanii
Успехов в учебе!
порно ролики гимнастки https://sexygimnastky.ru .
where can i get doxycycline over the counter: doxycycline medication – 100 mg doxycycline
Добрый день!
Приобрести диплом о высшем образовании.
stass2tm.beget.tech/blogs/1/diplomy-attestaty-i-spravki-v-izvestnom-onlayn-magazine.php
Здравствуйте!
Приобрести документ института вы сможете в нашей компании в Москве. Мы оказываем услуги по изготовлению и продаже документов об окончании любых университетов РФ. Вы получите необходимый диплом по любым специальностям, включая документы старого образца. Даем гарантию, что при проверке документа работодателем, никаких подозрений не возникнет.
Мы изготавливаем дипломы любых профессий по приятным ценам. Цена может зависеть от определенной специальности, года выпуска и ВУЗа. Стараемся поддерживать для заказчиков адекватную ценовую политику. Для нас очень важно, чтобы документы были доступными для подавляющей массы граждан.
allukrnews.ru/diplom-za-dengi-legko-byistro-i-bez-riska/
Рады помочь!
Привет!
Купить диплом о высшем образовании.
telegra.ph/Bolshoj-katalog-dokumentov-v-izvestnom-internet-magazine-07-04
Здравствуйте!
Мы изготавливаем дипломы любой профессии по приятным ценам.
cecc-expertises.fr/2024/06/речной-диплом-купить/
Привет!
Купить диплом ВУЗа.
avtovladelez.ru/zakazat-diplomyi-o-srednem-obrazovanii
Успехов в учебе!