Skip to content
This repository has been archived by the owner on Feb 16, 2021. It is now read-only.

Commit

Permalink
完成浮动提示的编写
Browse files Browse the repository at this point in the history
  • Loading branch information
tobiichiamane committed May 25, 2019
1 parent d38e5c3 commit 7dd2e55
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 16 deletions.
5 changes: 3 additions & 2 deletions PixivFSUWP/BigImage.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,12 @@
<InkCanvas x:Name="mainCanvas" Visibility="Collapsed"/>
</Grid>
</ScrollViewer>
<Grid x:Name="grdTip" HorizontalAlignment="Center" VerticalAlignment="Bottom" Margin="10" Visibility="Collapsed" Opacity="0">
<Grid x:Name="grdTip" HorizontalAlignment="Center" Grid.RowSpan="3"
VerticalAlignment="Bottom" Margin="20" Visibility="Collapsed" Opacity="0">
<Grid.Background>
<AcrylicBrush BackgroundSource="Backdrop" TintOpacity="0.2" TintColor="White" FallbackColor="White"/>
</Grid.Background>
<TextBlock x:Name="txtTip" Margin="5" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<TextBlock x:Name="txtTip" Margin="10" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Grid>
</Grid>
</Page>
41 changes: 29 additions & 12 deletions PixivFSUWP/BigImage.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,32 @@ private async void BtnSaveImage_Click(object sender, RoutedEventArgs e)
await saveImage();
}

List<(string, int)> tips = new List<(string, int)>();
bool _tip_busy = false;

public async Task ShowTip(string Message, int Seconds = 3)
{
tips.Add((Message, Seconds));
if (!_tip_busy)
{
_tip_busy = true;
while (tips.Count > 0)
{
(var m, var s) = tips[0];
txtTip.Text = m;
grdTip.Visibility = Visibility.Visible;
storyTipShow.Begin();
await Task.Delay(200);
await Task.Delay(TimeSpan.FromSeconds(s));
storyTipHide.Begin();
await Task.Delay(200);
grdTip.Visibility = Visibility.Collapsed;
tips.RemoveAt(0);
}
_tip_busy = false;
}
}

private async Task saveImage()
{
FileSavePicker picker = new FileSavePicker();
Expand Down Expand Up @@ -163,10 +189,7 @@ private async Task saveImage()
}
else
{
var messageDialog = new MessageDialog("图片已保存");
messageDialog.Commands.Add(new UICommand("好的"));
messageDialog.DefaultCommandIndex = 0;
await messageDialog.ShowAsync();
await ShowTip("图片已保存");
}
}
}
Expand Down Expand Up @@ -221,19 +244,13 @@ private async Task saveStrokes()
}
else
{
var messageDialog = new MessageDialog("墨迹已保存");
messageDialog.Commands.Add(new UICommand("好的"));
messageDialog.DefaultCommandIndex = 0;
await messageDialog.ShowAsync();
await ShowTip("墨迹已保存");
}
}
}
else
{
var messageDialog = new MessageDialog("没有墨迹可以保存");
messageDialog.Commands.Add(new UICommand("好的"));
messageDialog.DefaultCommandIndex = 0;
await messageDialog.ShowAsync();
await ShowTip("没有墨迹可以保存");
}
}
}
Expand Down
5 changes: 3 additions & 2 deletions PixivFSUWP/MainPage.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,12 @@
<NavigationViewItem Content="PlaceHolder" x:Name="NavPlaceholder" Visibility="Collapsed" IsEnabled="False"/>
</NavigationView.MenuItems>
</NavigationView>
<Grid x:Name="grdTip" HorizontalAlignment="Center" VerticalAlignment="Bottom" Margin="10" Visibility="Collapsed" Opacity="0">
<Grid x:Name="grdTip" HorizontalAlignment="Center"
VerticalAlignment="Bottom" Margin="20" Visibility="Collapsed" Opacity="0">
<Grid.Background>
<AcrylicBrush BackgroundSource="Backdrop" TintOpacity="0.2" TintColor="White" FallbackColor="White"/>
</Grid.Background>
<TextBlock x:Name="txtTip" Margin="5" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<TextBlock x:Name="txtTip" Margin="10" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Grid>
</Grid>
</Page>
26 changes: 26 additions & 0 deletions PixivFSUWP/MainPage.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,32 @@ public void HandleUri()
}
}

List<(string, int)> tips = new List<(string, int)>();
bool _tip_busy = false;

public async Task ShowTip(string Message, int Seconds = 3)
{
tips.Add((Message, Seconds));
if (!_tip_busy)
{
_tip_busy = true;
while (tips.Count > 0)
{
(var m, var s) = tips[0];
txtTip.Text = m;
grdTip.Visibility = Visibility.Visible;
storyTipShow.Begin();
await Task.Delay(200);
await Task.Delay(TimeSpan.FromSeconds(s));
storyTipHide.Begin();
await Task.Delay(200);
grdTip.Visibility = Visibility.Collapsed;
tips.RemoveAt(0);
}
_tip_busy = false;
}
}

private void BtnMe_Click(object sender, RoutedEventArgs e)
{
ContentFrame.Navigate(typeof(UserDetailPage), currentUser.ID);
Expand Down

0 comments on commit 7dd2e55

Please sign in to comment.