wpf圖片輪播(未釋放資源)
今天有個臨時需求,做圖片輪播,以前做了一個,找不到了。
想了個簡單的方法臨時拿著用,這裡先記著有空再來改。
上程式碼-----》
using System; using System.IO; using System.Windows; using System.Windows.Controls; using System.Windows.Media.Imaging; using System.Windows.Threading; namespace wpf圖片輪播 { /// <summary> /// MainWindow.xaml 的互動邏輯 /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromSeconds(0.1); timer.Tick += timer1_Tick; //timer.Start(); } /// <summary> /// 滑鼠點選事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button_Click(object sender, RoutedEventArgs e) { list.Children.Clear(); string[] s = SearchFolder(textBox.Text); BitmapImage_Source = new BitmapImage[s.Length]; int i = 0; foreach (string item in s) { BitmapImage_Source[i] = new BitmapImage(new Uri(@"" + item, UriKind.Absolute)); ; i++; TextBox cc = new TextBox(); cc.Text = item; list.Children.Add(cc); } timer.Start(); } private DispatcherTimer timer; /// <summary> /// 測試timer用 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void timer_Tick(object sender, EventArgs e) { this.Title = string.Concat("TimerWindow ", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")); } /// <summary> /// 改變圖片 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void timer1_Tick(object sender, EventArgs e) { //(你的定時處理) this.Dispatcher.Invoke(new Action(() => { image.Source = BitmapImage_Source[pic_now]; pic_now++; if (pic_now > BitmapImage_Source.Length - 1) { pic_now = 0; } })); } BitmapImage[] BitmapImage_Source; int pic_now = 0; /// <summary> /// 搜出路徑下 檔案路徑 /// </summary> /// <param name="dir"></param> /// <returns></returns> public static string[] SearchFolder(string dir) { string[] images = null; if (System.IO.Directory.Exists(dir)) //如果存在這個資料夾刪除之 { int image_sum = 0; foreach (string files in System.IO.Directory.GetFiles(dir)) { if (files.Contains(".JPG") || files.Contains(".jpg") || files.Contains(".JPEG") || files.Contains(".jpeg") || files.Contains(".bmp") || files.Contains(".BMP") || files.Contains(".GIF") || files.Contains(".gif") || files.Contains(".PNG") || files.Contains(".png")) { image_sum++; } } images = new string[image_sum]; image_sum = 0; foreach (string files in System.IO.Directory.GetFiles(dir)) { if (files.Contains(".JPG") || files.Contains(".jpg") || files.Contains(".JPEG") || files.Contains(".jpeg") || files.Contains(".bmp") || files.Contains(".BMP") || files.Contains(".GIF") || files.Contains(".gif") || files.Contains(".PNG") || files.Contains(".png")) { images[image_sum] = files; image_sum++; } } } return images; } } }
xaml 部分
<Window x:Class="wpf圖片輪播.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:wpf圖片輪播" mc:Ignorable="d" Title="MainWindow" Height="350" Width="525"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="53*"/> <RowDefinition Height="11*"/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="160*"/> <ColumnDefinition Width="357*"/> </Grid.ColumnDefinitions> <Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="245,15,0,0" VerticalAlignment="Top" Width="75" Click="button_Click" Grid.Column="1" Grid.Row="1"/> <StackPanel x:Name="list" HorizontalAlignment="Left" Height="320" VerticalAlignment="Top" Width="160" Grid.RowSpan="2"/> <TextBox x:Name="textBox" HorizontalAlignment="Left" Height="23" Margin="42,15,0,0" TextWrapping="Wrap" Text="D:\工作資料\SuperPay" VerticalAlignment="Top" Width="120" Grid.Column="1" Grid.Row="1"/> <Image x:Name="image" Margin="0" Grid.Column="1"/> </Grid> </Window>
相關推薦
wpf圖片輪播(未釋放資源)
今天有個臨時需求,做圖片輪播,以前做了一個,找不到了。 想了個簡單的方法臨時拿著用,這裡先記著有空再來改。 上程式碼-----》 using System; using System.IO; using System.Windows; using System.Windo
原生JS做圖片輪播(自動或手動)
前言 前端基本上靠用現成的封裝好的控制元件的我,今天也算是自己改了一回程式碼,也自己寫了寫原生JS,改了一下響應程式碼。需求是這樣的,頁面的記錄中有多個附件,如果附件是圖片的話,檢視圖片時要多張圖片進行輪播,實際需求是不能自動,要手動控制圖片切換。說起來也不難,用
Android--圖片輪播(banner)
使用步驟 Step 1.依賴banner Gradle dependencies{ compile 'com.youth.banner:banner:1.4.10' //最新版本 } 或者引用本地lib compile project(':bann
JavaScript實現簡單的圖片輪播(通過點選左右焦點切換)
最終實現效果圖 程式碼塊 <!DOCTYPE html> <html lang="en"> <head> <meta charset
android 圖片輪播(自動迴圈輪播)
實現思路就是通過viewPager自定義元件,支援圖片點選、手動滑動、自動輪播、初始化定位位置。不廢話了先上圖 元件下載 元件使用 public class BannerAutoActivity
TextView水平輪播(流水燈效果)
Layout的效果: <view.HomeTextView android:id="@+id/tv_home_marquee" android:singleLine="true" a
better-scroll 輪播(1.0+版本)
最近因為vue不是很熟練,所以看了慕課網的移動端音樂app。 但是在跟著做輪播圖的時候發現很多問題,迴圈不出來,自動輪播不出來等問題,發現是版本不對。解決完之後做個mark,如果你們也遇到這樣的問題,希望對你們有用 首先是slider.vue <tem
圖片輪播 及通知公告上滾動 (無空隙滾動)
空隙 pts ext slide cti remove clear lap tco 圖片輪播 1、樣式 <style> #banner { padding: 0px; width: 404px;
JS實現定時操作 圖片輪播效果(setInterval)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script> window.onload=functi
圖片輪播的實現(html js)
1.簡單實現 1)實現思想:通過輪播次數來決定顯示那一張首先,可以用簡單的div 包含img的框架來實現,我們為他新增按鈕,每個按鈕對應不同的圖片,那麼,每點選一次,將要顯示的圖片的style.dispay屬性設定為'block'將不顯示的圖片的display設定為none,可以實現簡單的按
判斷是否有網路+PullToRefreshListView+新增資料庫+無線輪播(本地圖片)
1.巢狀的Fragment頁面 dao層+sql語句:https://blog.csdn.net/weixin_43587850/article/details/84204659 public class Sone extends Fragment { private ViewPa
jquery實現圖片向左慢慢輪播(滑鼠懸停圖片停止輪播版)
window.onload=function(){ function $(id){ return document.getElementById(id); } var num=0; function autopl
【第五篇】Qt學習與使用---自定義的圖片輪播類(滾動播放圖片)
1、目標 編寫一個類,可以展示幾張圖片。類似於現在流行的視訊播放器的首頁中出現的滾動展示的控制元件。 2、 具體要求 (1)一次性展示三張圖片,左中右。中間的圖片至於頂部,旁邊的圖片被覆蓋,只露出一部分。 (2) 切換圖片的時候,呈現動態效果,需要有一個移動的過程。
微信小程式----gallery slider(圖片輪播)元件
wxml <scroll-view scroll-y="true" style="height:200px" class="page-body" bindscrolltolowe
Android 廣告(banner)圖片輪播、圖片瀏覽、仿微信大圖檢視控制元件(支援視訊和gif圖片)、支援動態新增資料
之前專案需要做個仿微信檢視大圖,需要新增圓形下載進度,支援視訊和圖片切換等一系列功能控制元件,自己抽空把開發的自定義控制元件的成果重新構造、整理處理封裝成庫(aar),提供出來,有需要朋友,歡迎使用,如果有什麼建議歡迎留言或者GitHub上提issues
android實現圖片+文字輪播(帶文字)
activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.
Bootstrap輪播(carousel)外掛中圖片變形的終極解決方案——使用jqthumb.js
在頂求網的首頁中我使用了BootStrap的輪播(carousel)外掛來展示文章中的圖片。我在程式中自動抓取文章的第一張圖片作為該輪播控制元件中要顯示的圖片,由於文章的圖片大小不一,而輪播外掛的大小基本是固定的,所以展示的時候圖片出現了變形。在網上找了很多中方式也沒有解決(過程曲折,不再贅述),直到找到了
圖片輪播的兩種實現方式(一)
專案中用到的第一種方法,學習借鑑了https://github.com/qingse/ImageSlideshow 自定義ImageSlideshow,繼承自FrameLayout,在構造方法中,初始化資料: public ImageSlideshow(Context c
imageSwitch(圖片輪播)使用程式碼詳解
package liu; import com.example.demo_0330.R; import android.app.Activity; import android.os.Bundle; import android.view.MotionEvent; imp
JS實現圖片輪播效果(自動和手動)
本次輪播效果圖如下:具有以下功能:1.自動播放(滑鼠進入顯示區域時停止播放) 2.左右焦點切換 3.底下小按鈕切換以下為實現程式碼:首先是html程式碼:<!DOCTYPE html> <html lang="en"> <head>