在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當前位置:雨林木風下載站 > 網頁設計教程 > 詳細頁面

使用electron完成滿屏愛心的效果(代碼示例)

使用electron完成滿屏愛心的效果(代碼示例)

更新時間:2025-12-07 文章作者:未知 信息來源:網絡 閱讀次數:

網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立...
網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立在超文本基礎之上的。超級文本標記語言之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。
本篇文章給大家帶來的內容是關于使用electron實現滿屏愛心的效果(代碼示例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

圖片被壓縮了 看起來有點難看

2345截圖20181127151253.png

主進程代碼

import {BrowserWindow, app, ipcMain} from 'electron'

createWindow();

ipcMain.on('quitApp', () => {
    app.quit();
});

function createWindow() {

    const loginURL = process.env.NODE_ENV === 'development' ? `http://localhost:9080` : `file://${__dirname}/index.html`;
    const win = new BrowserWindow({

        alwaysOnTop: true,
        modal: true,
        width: 1200,
        height: 6500,
        frame: false,
        show: false,
        darkTheme: true,
        resizable: false,
        minimizable: false,
        maximizable: false,
        transparent: true,
        type: 'toolbar',
        webPreferences: {
            devTools: false,
        }
    });
    win.loadURL(loginURL);
    win.once('ready-to-show', () => {
        win.show();
    });
}

渲染進程代碼

界面代碼

<template>
    <div style="position: absolute;width: 95%;height: 95%;border-radius: 10px;-webkit-app-region: drag">
        <canvas ref="drawHeart" id="drawHeart"></canvas>
    </div>
</template>

js代碼

 mounted() {
            var hearts = [];
            var canvas = this.$refs.drawHeart;
            var wW = 1920;
            var wH = 1040;
            // 創建畫布
            var ctx = canvas.getContext('2d');
            // 創建圖片對象
            var heartImage = new Image();
            heartImage.src = img;
            var num = 100;

            init();

            window.addEventListener('resize', function(){
                wW = window.innerWidth;
                wH = window.innerHeight;
            });
            // 初始化畫布大小
            function init(){
                canvas.width = wW;
                canvas.height = wH;
                for(var i = 0; i < num; i++){
                    hearts.push(new Heart(i%5));
                }
                requestAnimationFrame(render);
            }

            function getColor(){
                var val = Math.random() * 10;
                if(val > 0 && val <= 1){
                    return '#00f';
                } else if(val > 1 && val <= 2){
                    return '#f00';
                } else if(val > 2 && val <= 3){
                    return '#0f0';
                } else if(val > 3 && val <= 4){
                    return '#368';
                } else if(val > 4 && val <= 5){
                    return '#666';
                } else if(val > 5 && val <= 6){
                    return '#333';
                } else if(val > 6 && val <= 7){
                    return '#f50';
                } else if(val > 7 && val <= 8){
                    return '#e96d5b';
                } else if(val > 8 && val <= 9){
                    return '#5be9e9';
                } else {
                    return '#d41d50';
                }
            }

            function getText(){
                var val = Math.random() * 10;
                if(val > 1 && val <= 3){
                    return '愛你一輩子';
                } else if(val > 3 && val <= 5){
                    return '感謝你';
                } else if(val > 5 && val <= 8){
                    return '喜歡你';
                } else{
                    return 'I Love You';
                }
            }

            function Heart(type){
                this.type = type;
                // 初始化生成范圍
                this.x = Math.random() * wW;
                this.y = Math.random() * wH;

                this.opacity = Math.random() * .5 + .5;

                // 偏移量
                this.vel = {
                    x: (Math.random() - .5) * 5,
                    y: (Math.random() - .5) * 5
                }

                this.initialW = wW * .5;
                this.initialH = wH * .5;
                // 縮放比例
                this.targetScale = Math.random() * .15 + .02; // 最小0.02
                this.scale = Math.random() * this.targetScale;

                // 文字位置
                this.fx = Math.random() * wW;
                this.fy = Math.random() * wH;
                this.fs = Math.random() * 10;
                this.text = getText();

                this.fvel = {
                    x: (Math.random() - .5) * 5,
                    y: (Math.random() - .5) * 5,
                    f: (Math.random() - .5) * 2
                }
            }

            Heart.prototype.draw = function(){
                ctx.save();
                ctx.globalAlpha = this.opacity;
                ctx.drawImage(heartImage, this.x, this.y, this.width, this.height);
                ctx.scale(this.scale + 1, this.scale + 1);
                if(!this.type){
                    // 設置文字屬性
                    ctx.fillStyle = getColor();
                    ctx.font = 'italic ' + this.fs + 'px sans-serif';
                    // 填充字符串
                    ctx.fillText(this.text, this.fx, this.fy);
                }
                ctx.restore();
            }
            Heart.prototype.update = function(){
                this.x += this.vel.x;
                this.y += this.vel.y;

                if(this.x - this.width > wW || this.x + this.width < 0){
                    // 重新初始化位置
                    this.scale = 0;
                    this.x = Math.random() * wW;
                    this.y = Math.random() * wH;
                }
                if(this.y - this.height > wH || this.y + this.height < 0){
                    // 重新初始化位置
                    this.scale = 0;
                    this.x = Math.random() * wW;
                    this.y = Math.random() * wH;
                }

                // 放大
                this.scale += (this.targetScale - this.scale) * .1;
                this.height = this.scale * this.initialH;
                this.width = this.height * 1.4;

                // -----文字-----
                this.fx += this.fvel.x;
                this.fy += this.fvel.y;
                this.fs += this.fvel.f;

                if(this.fs > 50){
                    this.fs = 2;
                }

                if(this.fx - this.fs > wW || this.fx + this.fs < 0){
                    // 重新初始化位置
                    this.fx = Math.random() * wW;
                    this.fy = Math.random() * wH;
                }
                if(this.fy - this.fs > wH || this.fy + this.fs < 0){
                    // 重新初始化位置
                    this.fx = Math.random() * wW;
                    this.fy = Math.random() * wH;
                }
            }

            function render(){
                ctx.clearRect(0, 0, wW, wH);
                for(var i = 0; i < hearts.length; i++){
                    hearts[i].draw();
                    hearts[i].update();
                }
                requestAnimationFrame(render);
            }

        }

擴展功能

全屏展示

const size = screen.getPrimaryDisplay().workAreaSize;   //獲取顯示器的寬高
win.setSet(size.width size.height);
win.setPosition(0,0);

這樣就會讓窗口全屏 但是有一個問題 就是這樣做界面不會正確響應 我們可以使用進程通信去解決

win.webContents.sen('windowSize',size);

之后再主進程中監聽就行了

窗口點擊穿透

以上代碼會有一個問題 就是一旦運行 就不能關閉了

win.setIgnoreMouseEvents(true) 就可以讓界面只做展示使用 鼠標可以點擊你窗口的任意區域

以上就是使用electron實現滿屏愛心的效果(代碼示例)的詳細內容,更多請關注php中文網其它相關文章!


網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 欧美女同在线观看| 大肉大捧一进一出好爽视频| 妞干网在线免费视频| 无码 制服 丝袜 国产 另类| 一区二区三区四区免费观看| 欧美视频亚洲图片| 精品国产无码在线| 欧美少妇在线观看| 免费看日b视频| 日韩精品在线中文字幕| 成人在线视频一区二区三区| 青草网在线观看| 9久久9毛片又大又硬又粗| 黄色国产一级视频| 黑森林福利视频导航| 亚洲第一狼人区| 天天色天天干天天色| 成人黄色片免费| 国产69精品久久久久久久| 波多野结衣家庭教师在线播放| 99999精品视频| 午夜精品在线免费观看| 天天操天天干天天做| 亚洲一区 在线播放| 屁屁影院ccyy国产第一页| 动漫av网站免费观看| 国产探花在线看| 丁香色欲久久久久久综合网| 日韩精品―中文字幕| 婷婷激情四射五月天| 日韩在线视频在线| 草草草在线视频| 国产精品无码乱伦| 日韩精品一区二区三区色欲av| 亚洲娇小娇小娇小| 免费超爽大片黄| 伊人五月天婷婷| 国产l精品国产亚洲区久久| 色噜噜狠狠一区二区| 日本人体一区二区| а 天堂 在线| 丁香啪啪综合成人亚洲| 亚洲精品少妇一区二区| 亚洲免费一级视频| 久久亚洲中文字幕无码| 香蕉视频xxxx| 中文字幕在线综合| 各处沟厕大尺度偷拍女厕嘘嘘| 久久av喷吹av高潮av| 91人人澡人人爽人人精品| 美女扒开大腿让男人桶| 午夜啪啪免费视频| 三级av免费观看| 香蕉视频禁止18| 国内外成人激情视频| 成人午夜视频在线观看免费| 色中文字幕在线观看| 老司机午夜性大片| 成人黄色片视频| 极品美女扒开粉嫩小泬| 国产激情片在线观看| 400部精品国偷自产在线观看| www.久久av.com| 拔插拔插华人永久免费| av中文字幕网址| 99九九99九九九99九他书对| 手机在线免费观看毛片| 国产精品乱码久久久久| 久久久久狠狠高潮亚洲精品| 逼特逼视频在线| 亚洲中文字幕无码不卡电影| 国产免费成人在线| 人妻丰满熟妇av无码区app| 99精品视频播放| 亚洲激情在线观看视频| 奇米视频888| 毛片毛片毛片毛片毛| 天天操夜夜操很很操| 亚洲精品国产suv一区88| 免费在线黄网站| 亚洲熟妇无码另类久久久| 看av免费毛片手机播放| 免费一级特黄录像| 北条麻妃亚洲一区| 999久久欧美人妻一区二区| 性欧美大战久久久久久久| 日韩中文字幕三区| 国产成人在线综合| 国产激情片在线观看| 国产精品后入内射日本在线观看| 久久久久久久久久久免费视频| 一级黄色香蕉视频| 深爱五月综合网| 免费在线黄网站| 91极品视频在线观看| 成人午夜视频免费观看| 97国产精东麻豆人妻电影| 性猛交ⅹ×××乱大交| a级黄色片免费| 国产一伦一伦一伦| 成年人看的毛片| 午夜xxxxx| 韩国日本在线视频| 欧美少妇在线观看| 91淫黄看大片| 日本精品久久久久久久久久| 中文字幕亚洲乱码| 欧美性大战久久久久xxx | 五月婷婷丁香综合网| 9l视频自拍9l视频自拍| 九九九在线观看视频| 欧美国产综合在线| 日韩欧美理论片| 国产成人精品无码播放| 日本免费a视频| www.色就是色.com| 黄色免费网址大全| 丝袜老师办公室里做好紧好爽| aaa免费在线观看| 亚洲成人福利在线| 乱子伦视频在线看| 欧美牲交a欧美牲交aⅴ免费下载| av 日韩 人妻 黑人 综合 无码| 九一精品久久久| 中文字幕第36页| 中文字幕第21页| 日本在线视频www| 漂亮人妻被中出中文字幕| 青青草国产精品视频| 国产在线视频综合| 国产一二三四区在线观看| 中文字幕一区久久| 国产成人在线综合| 亚洲一区二区三区四区精品| 五月婷婷六月丁香激情| av免费一区二区| 中文字幕色网站| 日本不卡一区二区三区四区| 亚洲精品永久视频| 中国一级黄色录像| h无码动漫在线观看| 国产婷婷一区二区三区| 成人在线观看你懂的| 自慰无码一区二区三区| 男人操女人免费软件| 欧美精品第三页| 日韩 国产 一区| av动漫在线免费观看| 久久国产精品网| 成人性视频欧美一区二区三区| 妓院一钑片免看黄大片| 在线免费黄色网| 青青青青在线视频| 99福利在线观看| 可以看污的网站| 一卡二卡三卡视频| 国产精品久久久久9999小说| 青娱乐精品在线| 中文字幕无码精品亚洲35| 日韩av片网站| 岛国大片在线播放| 成人黄色一区二区| 亚洲成人动漫在线| 欧美性猛交久久久乱大交小说 | 免费看av软件| 成熟了的熟妇毛茸茸| 青青草原国产在线视频| 国产精品久久久久9999爆乳| 国产真实乱子伦| 国产资源在线免费观看| 久久久国产欧美| 青青青免费在线| 国产一级片中文字幕| 无码日韩人妻精品久久蜜桃| 中文字幕免费高| 久久黄色片网站| 欧美一级黄色片视频| wwwwww欧美| 大桥未久一区二区三区| 91极品尤物在线播放国产| 97超碰青青草| 精品人妻少妇一区二区| 国产精品av免费| 五月激情五月婷婷| 欧美日韩大尺度| 欧美日韩在线中文| 免费看国产一级片| 超级碰在线观看| 色香蕉在线观看| 中文字幕制服丝袜在线| 欧美午夜aaaaaa免费视频| 国产裸体舞一区二区三区| jizzjizz国产精品喷水| 欧美 亚洲 视频| 97av中文字幕| 艳母动漫在线免费观看| 999热精品视频| 奇米777在线| 无码毛片aaa在线| 国产盗摄视频在线观看|