前几天课设做个聊天系统,顺便实现了这个在程序外显示弹幕作为消息提示的功能,这里记录一下怎么搞。
目录
效果
思路
- 创建一个子窗口
- 将子窗口去掉窗口标题栏,设置背景透明
- 在里面放文本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("嘿嘿,我的洛天依");
}
}
}
问题
- 这个弹幕会被其他高层次的窗口遮挡,显然问题在于我们创建的窗口不是顶层窗口,这个后面再看看咋整。
Привет, друзья!
Где купить диплом по актуальной специальности?
Мы предлагаем документы ВУЗов, которые расположены на территории всей России. Можно заказать диплом от любого высшего учебного заведения, за любой год, указав необходимую специальность и оценки за все дисциплины. Дипломы печатаются на бумаге высшего качества. Это дает возможности делать настоящие дипломы, не отличимые от оригинала. Документы будут заверены всеми необходимыми печатями и штампами.
Мы можем предложить дипломы психологов, юристов, экономистов и других профессий по приятным тарифам.
diploms-x24.ru/kupit-diplom-voronezh
Окажем помощь!
Добрый день!
Сколько стоит диплом высшего и среднего образования и как это происходит?
arusak-diploms-srednee.ru/kupit-diplom-v-rostove-na-donu В
Привет!
Наша компания предлагает заказать диплом высокого качества, неотличимый от оригинала без использования специального оборудования и опытного специалиста.
old.pokvesti.ru/forum/viewtopic.php?f=42&t=92299
Удачи!
Здравствуйте!
Стоимость дипломов высшего и среднего образования и процесс их получения
vk.com/unikvseru?w=wall414329581_6828
Рады оказаться полезными!.
Привет!
Быстрая схема покупки диплома старого образца: что важно знать?.
Заказать диплом о высшем образовании.
phileo.me/blogs/185406/%D0%9B%D0%B5%D0%B3%D0%BA%D0%BE-%D0%B7%D0%B0%D0%BA%D0%B0%D0%B7%D1%8B%D0%B2%D0%B0%D0%B5%D0%BC-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B-%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-Russian-Diplom
Thanks for finally talking about > [Qt/qml]程序之外显示的弹幕 –
猫薄荷 < Liked it!
you will eventually be rewarded with less interaction.However—this is a marathon,ダッチワイフ
Привет, друзья!
Заказать документ института вы сможете в нашей компании.
diplomyx.com/kupit-diplom-vracha
https://ciprodelivery.pro/# cipro online no prescription in the usa
Привет, друзья!
Купить диплом о высшем образовании
hallbook.com.br/blogs/266941/%D0%A1%D0%BE%D0%B2%D0%B5%D1%82%D1%8B-%D0%BF%D0%BE-%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D0%B9-%D0%BF%D0%BE%D0%BA%D1%83%D0%BF%D0%BA%D0%B5-%D0%B4%D0%B8%D0%BF%D0%BB%D0%BE%D0%BC%D0%B0-%D0%B2%D1%83%D0%B7%D0%B0-%D0%BE-%D0%B2%D1%8B%D1%81%D1%88%D0%B5%D0%BC-%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8
куплю диплом техникума реестр diplomasx.com .
http://clomiddelivery.pro/# get cheap clomid price
Добрый день!
Заказать документ о получении высшего образования можно в нашей компании в столице.
ast-diplomas24.ru/kupit-diplom-moskva
Добрый день!
Купить диплом университета.
sport-faq.ru/ofitsialnyie-diplomyi-dlya-vashey-kareryi
Успехов в учебе!
купить диплом в ессентуках ast-diploms.com .
cheap amoxicillin 500mg: amoxicillin 500mg capsules antibiotic – amoxicillin 500mg capsules antibiotic
Привет, друзья!
Мы готовы предложить документы техникумов, расположенных в любом регионе РФ. Вы можете заказать диплом от любого заведения, за любой год, в том числе документы СССР. Дипломы и аттестаты выпускаются на “правильной” бумаге самого высшего качества. Это дает возможности делать государственные дипломы, которые не отличить от оригиналов. Документы будут заверены всеми обязательными печатями и штампами.
hunting-movie.ru/gallery/image/670-zakazyvaem-diplom-v-proverennom-internet-magazine-po-vygodnoy-cene/
Hi, I do believe this is an excellent blog. I stumbledupon it 😉 I may come back once again since
i have book marked it. Money and freedom is the best way to change, may you be rich and continue to guide others.
amoxicillin for sale online: where can you buy amoxicillin over the counter – can you buy amoxicillin over the counter canada
This is a very good tip especially to those new to the blogosphere. Simple but very accurate information… Thanks for sharing this one. A must read post.
Здравствуйте!
Заказать диплом о высшем образовании.
wiki.astrakhan.pro/index.php/%D0%A2%D0%B5%D1%85%D0%BD%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D0%BF%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%BA%D0%B0_%D0%B8_FAQ._%D0%97%D0%B0%D0%BA%D0%B0%D0%B7%D1%8B%D0%B2%D0%B0%D0%B5%D0%BC_%D0%B4%D0%B8%D0%BF%D0%BB%D0%BE%D0%BC_%D0%B2_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82%D0%B5
Привет, друзья!
Мы можем предложить документы ВУЗов, расположенных в любом регионе РФ. Вы имеете возможность купить качественный диплом за любой год, указав необходимую специальность и оценки за все дисциплины. Документы печатаются на бумаге самого высокого качества. Это позволяет делать настоящие дипломы, не отличимые от оригинала. Документы заверяются всеми обязательными печатями и штампами.
homes-for-homeless-children.mn.co/posts/61828787
Привет!
Диплом ВУЗа купить официально с упрощенным обучением в Москве.
Заказать диплом о высшем образовании.
doomelang.com/read-blog/6800
Добрый день!
Официальная покупка аттестата о среднем образовании в Москве и других городах.
Заказать диплом любого университета.
nx7agy4v9.tusblogos.com/28288368/%D0%9A%D0%B0%D0%BA-%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%BD%D0%B5%D0%B4%D0%BE%D1%80%D0%BE%D0%B3%D0%BE-%D0%BF%D1%80%D0%B8%D0%BE%D0%B1%D1%80%D0%B5%D1%81%D1%82%D0%B8-%D0%B4%D0%B8%D0%BF%D0%BB%D0%BE%D0%BC-%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
Здравствуйте!
Мы можем предложить документы ВУЗов, которые находятся на территории всей Российской Федерации. Вы сможете купить диплом за любой год, в том числе документы старого образца СССР. Документы делаются на “правильной” бумаге высшего качества. Это дает возможности делать настоящие дипломы, не отличимые от оригиналов. Документы будут заверены всеми обязательными печатями и подписями.
http://www.globalfreetalk.com/read-blog/8292
http://doxycyclinedelivery.pro/# doxycycline buy online usa
doxycycline online no prescription [url=http://doxycyclinedelivery.pro/#]doxycycline 200 mg[/url] doxycycline 631311
Здравствуйте!
Полезные советы по безопасной покупке диплома о высшем образовании.
Заказать диплом ВУЗа.
xect2ppa5.blogdeazar.com/28386633/%D0%A1-%D0%BB%D0%B5%D0%B3%D0%BA%D0%BE%D1%81%D1%82%D1%8C%D1%8E-%D0%B7%D0%B0%D0%BA%D0%B0%D0%B7%D1%8B%D0%B2%D0%B0%D0%B5%D0%BC-%D0%B0%D1%82%D1%82%D0%B5%D1%81%D1%82%D0%B0%D1%82-%D0%B2-%D0%B8%D0%B7%D0%B2%D0%B5%D1%81%D1%82%D0%BD%D0%BE%D0%BC-%D0%BC%D0%B0%D0%B3%D0%B0%D0%B7%D0%B8%D0%BD%D0%B5-russian-diplom
Здравствуйте!
Мы предлагаем дипломы любой профессии по приятным тарифам.
onetable.world/read-blog/59803
Привет!
Заказать диплом о высшем образовании.
w202.clanbb.ru/viewtopic.php?id=33373#p384945
Успешной учебы!
Здравствуйте!
Приобрести диплом университета.
antimoderator.mybb.ru/viewtopic.php?id=372#p443
Успехов в учебе!
Здравствуйте!
Купить документ о получении высшего образования можно в нашей компании.
ast-diplom.com/otzyvy
Успешной учебы!
Добрый день!
Купить диплом ВУЗа.
antimoderator.mybb.ru/viewtopic.php?id=372#p443
Успешной учебы!
Здравствуйте!
Как приобрести аттестат о среднем образовании в Москве и других городах
toolsrepair.ru/forum/viewtopic.php?f=5&t=2933455
Рады оказаться полезными!.
Привет!
Диплом вуза купить официально с упрощенным обучением в Москве
kvitka.ukrbb.net/viewtopic.php?f=58&t=23466
Рады оказать помощь!.
Добрый день!
Где и как купить диплом о высшем образовании без лишних рисков
dolgoprudni.rusff.me/viewtopic.php?id=2312#p5195
Поможем вам всегда!.
Полезные советы по безопасной покупке диплома о высшем образовании
diplomasx.com/kupit-diplom-sankt-peterburg
https://amoxildelivery.pro/# where to buy amoxicillin 500mg without prescription
Добрый день!
Официальная покупка диплома ПТУ с упрощенной программой обучения
arusak-diploms-srednee.ru/kupit-diplom-v-krasnodare В
buy prescription drugs from india: indian pharmacy online – indian pharmacy
Добрый день!
Приобретение диплома ПТУ с сокращенной программой обучения в Москве
arusak-diploms-srednee.ru/kupit-diplom-v-cheliabinske В
Добрый день!
Приобретение диплома ПТУ с сокращенной программой обучения в Москве
artem-energo.ru/forums.php?m=posts&q=18321&n=last#bottom
Рады оказать помощь!.
buying from online mexican pharmacy: mexico pharmacies prescription drugs – medicine in mexico pharmacies
top 10 online pharmacy in india: online pharmacy india – indian pharmacy online
Привет, друзья!
Наша компания предлагает выгодно и быстро заказать диплом, который выполнен на оригинальном бланке и заверен печатями, штампами, подписями официальных лиц. Наш документ пройдет любые проверки, даже с применением специальных приборов. Решайте свои задачи быстро и просто с нашим сервисом.
авто-днр.рф/users/ygubage
Хорошей учебы!
Привет!
Заказать документ университета вы имеете возможность в нашем сервисе.
diplomasx.com/kupit-diplom-krasnoyarsk
world pharmacy india: buy medicines online in india – buy medicines online in india
canadian drug: canadian drug pharmacy – best rated canadian pharmacy
canadian pharmacy antibiotics: canadian pharmacy king reviews – trustworthy canadian pharmacy
Привет!
Где заказать диплом специалиста?
Купить диплом о высшем образовании.
stroimarket-komi.ru/club/user/54/blog/38295/
best online pharmacy india: india pharmacy – mail order pharmacy india