RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-481134

tomato-magnet-regulato's questions

Martin Hope
MrP
Asked: 2023-03-28 10:31:20 +0000 UTC

和float: left一样,在细节里面留下照片

  • 5

没有浮动:左

details { 
cursor: pointer; 
border: 1px solid #aaa; 
border-radius: 4px; 
padding: 0.5em 0.5em 0; 
margin-top:5px; 
min-width: 400px; 
} 
summary { 
margin: -0.5em -0.5em 0; 
padding: 0.5em; 
} 
details[open] { 
padding: 0.5em; 
} 
details[open] summary { 
border-bottom: 1px solid #aaa; 
margin-bottom: 0.5em; 
}
<details open="">
<summary>
<span style="font-size:14px;">
<span style="font-family:Georgia,serif;">Доп. Информация
</span>
</span>
</summary>
<div><img alt="" src="https://img.gazeta.ru/files3/34/14989034/59051691-10915089-image-m-34_165-pic_32ratio_900x600-900x600-67347.jpg" style="width: 350px; height: 200px;" /></div>
asdasdasd
</details>

向左飘浮

details { 
    cursor: pointer; 
    border: 1px solid #aaa; 
    border-radius: 4px; 
    padding: 0.5em 0.5em 0; 
    margin-top:5px; 
    min-width: 400px; 
    } 
    summary { 
    margin: -0.5em -0.5em 0; 
    padding: 0.5em; 
    } 
    details[open] { 
    padding: 0.5em; 
    } 
    details[open] summary { 
    border-bottom: 1px solid #aaa; 
    margin-bottom: 0.5em; 
    }
    <details open="">
    <summary>
    <span style="font-size:14px;">
    <span style="font-family:Georgia,serif;">Доп. Информация
    </span>
    </span>
    </summary>
    <div style="float:left"><img alt="" src="https://img.gazeta.ru/files3/34/14989034/59051691-10915089-image-m-34_165-pic_32ratio_900x600-900x600-67347.jpg" style="width: 350px; height: 200px;" /></div>
    asdasdasd
    </details>


html
  • 1 个回答
  • 26 Views
Martin Hope
tomato-magnet-regulato
Asked: 2022-08-05 16:59:20 +0000 UTC

轨迹栏添加删除“按钮”

  • 0

有一个创建按钮的功能

public button addButton(string nameBtn, Image img)
        {
            button btn = new button();
            btn.Name = nameBtn;
            btn.BackgroundImageLayout = ImageLayout.Center;
            btn.BackgroundImage = img;
            btn.Height = 55;
            btn.Width = 55;
            btn.AllowDrop = true;
            return btn;
        }

我用它来创建/删除面板上的按钮 - FlowLayoutPanel,如下:

panelControl.Controls.Add(addButton("NameButton", IMAGE);
panelControl.Controls.Remove(panelControl.Controls[index]);

索引在哪里 -int index = panelControl.Controls.Count - 1;即 每次我删除面板上的最后一个按钮(看起来很方便)。

大脑想出了这个主意——用它来创建trackBar事件按钮——Scroll但那是运气不好,怎么做呢?数组不适合。List<Button>- 也不适合(对我来说)。如果没有它们我无法关闭程序(好的),但我的眼睛只是模糊了,有一个更简单的解决方案吗?

UDP:每次都保存位置TrackBar'a?如果它增加,从他那里跳舞,.add否则.remove呢?

在此处输入图像描述

c# .net
  • 1 个回答
  • 38 Views
Martin Hope
tomato-magnet-regulato
Asked: 2022-08-23 14:01:11 +0000 UTC

异步复制配合progressBar'om

  • 0

其实任务已经完成了一半,我有现成的解决方案,不是没有帮助backgoundWorker:

复制功能:

private void copy_file(string source_, string des)
        {
                FileStream fsOut = new FileStream(des, FileMode.Create);
                FileStream fsIn = new FileStream(source_, FileMode.Open);
                byte[] bt = new byte[1048756];
                int readByte;

                while ((readByte = fsIn.Read(bt, 0, bt.Length)) > 0)
                {
                    fsOut.Write(bt, 0, readByte);
                    backgroundWorker1.ReportProgress((int)(fsIn.Position * 100 / fsIn.Length));
                }
                fsIn.Close();
                fsOut.Close();
        }

做工作:

private void Worker_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
        {
            copy_file(server_path + filename, Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\" + filename);
        }

RunWorker 已完成:

private void Worker_RunWorkerCompleted(object sender, System.ComponentModel.RunWorkerCompletedEventArgs e)
        {
            if (e.Error == null)
            {               
                err_msg.Text = "Файл находится на рабочем столе!";
            }
            else
            {
                err_msg.Text = "Произошла ошибка.";
            }
            download_sound.Enabled = true;           
        }

进度改变:

private void Worker_ProgressChanged(object sender, System.ComponentModel.ProgressChangedEventArgs e)
        {
            progressBar1.Value = e.ProgressPercentage;
            err_msg.Text = progressBar1.Value.ToString() + "%";
        }

点击按钮:

Worker.RunWorkerAsync();

上面的方法效果很好,但是当在异步函数中使用这个方法时(比如private async void button_click()),我得到了一个线程排队的效果,嗯......文件被复制 - 放在正确的文件夹中 - 进度条立即填满。我试图通过网络复制,同样的麻烦。但幸运的是,当async你btn外出时它可以工作。

现在说重点:

因为 最初,我的计划是使用async\await方法,我切换到这种文件复制:

public async Task CopyFilesAsync(StreamReader Source, StreamWriter Destination)
        {
            char[] buffer = new char[0x1000];
            int numRead;
            while ((numRead = await Source.ReadAsync(buffer, 0, buffer.Length)) != 0)
            {
                await Destination.WriteAsync(buffer, 0, numRead);
            }
        }

_

public async Task CopyFile(string startDirectoy, string endDirectory)
        {
            using (StreamReader SourceReader = File.OpenText(startDirectoy))
            {
                using (StreamWriter DestinationWriter = File.CreateText(endDirectory))
                {
                    await CopyFilesAsync(SourceReader, DestinationWriter);
                    SourceReader.Close();
                    DestinationWriter.Close();
                }
            }
        }

我只是不知道如何让progressBar 执行我的任务。我也无法到达 StreamReader.Position 使用:

progressBar1.Value=(int)((StreamReader.BaseStream.Position/StreamReader.BaseStream.Length)*100);

我没有成功。ProgressBar 与一切分开为我工作>< 如果您有一些提示,请给他们,我将非常感激!

在此处输入图像描述

c# winforms
  • 1 个回答
  • 68 Views
Martin Hope
tomato-magnet-regulato
Asked: 2022-08-10 18:21:03 +0000 UTC

更新sql - c#添加到表+1中的数字

  • 1

危险代码:

using(var con = new SqlConnection(connection))
                {
                    con.Open();
                    string update = "update [DataBase] set [count] = [count]+ 1 where [id] = @id'";
                    using (var comm = new SqlCommand(update, con))
                    {
                        /* ------ */
                    }
                }

你能给我解释一下吗。SELECT如果我想在条件下显示某些东西,我理解使用:

string show = $"select name from DataBase where ID = '{id}'";
            using (var con = new SqlConnection(connection))
            using (var comm = new SqlCommand())
            {
                con.Open();
                comm.Connection = con;
                comm.CommandText = show;
                using(var reader = comm.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        CB.Items.Add(reader[0].ToString()); 
                    }
                }
            }

我什至学会了如何使用INSERT——通过 SQL server 中的存储过程。但我完全不知道如何int通过 ID 简单地通过 C#(上面的代码)添加到类型表 + 1。

using(var con = new SqlConnection(connection))
                    {
                        con.Open();
                        string update = $"update [DataBase] set [count] = [count]+ 1 where [id] = '{id(параметр метода, например)}'";
                        using (var comm = new SqlCommand(update, con))
                        {
                            /* ------ */
                        }
                    }

我有什么:

private void update(string table_number)
        {
            using(var con = new SqlConnection(connection))
            {
                con.Open();
                string update = $"update DataBase set count = count + 1 where id = '{table_number}'";
                using (var comm = new SqlCommand(update, con))
                {                    
                    comm.ExecuteNonQuery();                    
                }
            }
        }
c# sql-server
  • 1 个回答
  • 63 Views
Martin Hope
tomato-magnet-regulato
Asked: 2022-08-02 18:17:19 +0000 UTC

处理与 MS SQL 数据库的连接错误

  • 0

有Boolean一个功能:

根据以下建议重写:

public bool checkUser_Login(TextBox logingox)
    {
        var login = logingox.Text;
        string checklogin = $"select count(login_users) from registration where login_users = '{login}'";

        using (SqlConnection con = new SqlConnection(connectionString))
        {
            con.Open();
            using (SqlCommand check = new SqlCommand(checklogin, con))
            {
                check.Parameters.Add("login_users", SqlDbType.VarChar).Value = login;
                int result = (int)check.ExecuteScalar();
                return result > 0;
            }                
        }
    }

检查数据库中的匹配项,如果这样的记录已经存在,则textBox返回,如果不存在则返回。我决定将这个“奇迹”与事件结合使用。得到一个示例代码:truefalse TextChanged

private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (checkUser_Login(TextBoxLogin) == true)
            {
                label2.Text = "Пользователь под ником, " + textBox1.Text + ", уже существует!";
                button1.Enabled = false;            
            }else
            {
                label2.Text = "\0";                    
            }
        }

在此处输入图像描述

事实证明,如果登录已经注册,则实时检查的效果。我得到了适当的提示,绕过了首先使用按钮所花费的时间,然后尝试修复它(我不需要就超过 900000 个用户的软件速度提供任何建议,谢谢)。如何处理这种形式的异常 - отсутствия подключения. 那些。如果服务器关闭,那么我会得到一个简单的 - Подключение отсутствует。

在此处输入图像描述

在此处输入图像描述

结果是:

private async Task<bool> checkUser_Login(TextBox logingox)
        {
            var login = logingox.Text;
            string checklogin = $"select login_users from registration where login_users = '{login}'";

           
            using (var con = new SqlConnection(connectionString))
            {
                await con.OpenAsync();
                using (var check = new SqlCommand(checklogin, con))
                {
                    check.Parameters.Add("login_users", SqlDbType.VarChar).Value = login;
                    var result = (string)await check.ExecuteScalarAsync();
                    return result != null;
                }
            }            
        }

用法:

bool x = await checkUser_Login(textBox1);

 if (x) {...}

并且不要忘记使用的方法中的异步。

private async void textBox1_TextChanged(object sender, EventArgs e)
c# winforms
  • 2 个回答
  • 114 Views
Martin Hope
tomato-magnet-regulato
Asked: 2022-09-05 14:52:01 +0000 UTC

“集合已被修改;无法执行枚举操作。”

  • 0

根据表格的资金,我在字符串数组中获得files了文件的直接路径DragDrop。

string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);

在帮助下foreach,我想显示所有这些文件listBox

foreach (string file in files)
{
    listBox1.Items.Add(file);     
}

任务自然没那么简单。每个файл代表архив с данными. 我需要открыть这个архив,用于写作,以及переименовать我需要的文件 -сохранить.

在图书馆的帮助下,我实际上试图做什么DotNetZip。我用作解决方案的基础,文档中的一个示例,这就是发生的事情:

            string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
            foreach (string file in files)
            {                    
                using (ZipFile zip = ZipFile.Read(file))
                {
                    foreach (ZipEntry z in zip)
                    {
                        if(z.FileName == "folder/setting.ini")
                        {
                            z.FileName = "folder/config.ini";                            
                        }                     
                    }
                    zip.Save();
                }            
                listBox1.Items.Add(file);
            }

我得到的输出Ошибку来自问题的主题。我知道它会foreach保存集合并在每个圆圈(通过)上进行比较。但是为什么文档DotNetZip使用这个特定的示例来更改存档中的文件?在等待答案的同时,我将尝试通过formb 一些事情会解决。

示例 DotNetZip 解决方案

c#
  • 1 个回答
  • 10 Views
Martin Hope
tomato-magnet-regulato
Asked: 2022-07-17 17:31:33 +0000 UTC

元素不在块内居中

  • 0

body{
    margin: 0 auto;
}

.logo_mess{
    display: flex;
    justify-content: center;    
}

.logo_mess ul{
    list-style: none;
}

.logo_mess ul li{
    display: inline-block;  
}
<body>

       <div class="logo_mess">
            <ul>
                <li><a href="#" class="">asd</a></li>
                <li><a href="#" class="">asd</a></li>
                <li><a href="#" class="">asd</a></li>
                <li><a href="#" class="">asd</a></li>
                <li><a href="#" class="">asd</a></li>
            </ul>
        </div>

</body>

在此处输入图像描述

并且在全屏扩展的情况下,不会观察到这个问题。

html
  • 1 个回答
  • 10 Views
Martin Hope
tomato-magnet-regulato
Asked: 2022-07-15 13:34:40 +0000 UTC

icq new bot api 限制 bot 范围

  • 0

有一个代码:

def message_start(bot,event):
    bot.send_text(chat_id=event.from_chat, text = START_MESSAGE)
    
def start_meeting(bot):
    bot.dispatcher.add_handler(StartCommandHandler(callback=message_start))

使用 command/start时,它会向用户发送一条消息。因为 该机器人与聊天一起工作,它也在其中做出反应。例如,在电报的 aiogram 中,有一些过滤器允许您严格限制机器人的范围。如何在 ICQ NEW Bot API 上做类似的事情?

python
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5